This action might not be possible to undo. Are you sure you want to continue?
Name : Dheenan Ganesan
Please mute your mobile phones Do not come late OR while the session is ON Help each other in learning – as learning is a continuous process
Participate actively to make the session interactive
No side conversations Do not beat the dead horse
Automation Concept 1. Test Automation – Why? 2. Test Automation – Qualifying Criteria 3. Test Automation - Prerequisites 4. Automation Readiness Check 5. Challenges in Automation 6. Phases of Automation 7. Automation Framework 8. Skills required for scripting 9. Availability of Automation tools Automation Tool - QTP 1. Tool Selection Process 2. Costs involved in automation 3. ROI 4. Automation Benefits 5. Automation Drawbacks 6. Case Study 7. Test QTP Demo
Test Automation – Why?
Reduced Test Cycle Time Earlier defect reporting Reduction in Test Execution Effort Remove Tester fatigue Earlier informed decision making Detailed Test Log Archives Reduced criticality of Functional/Domain expertise
Test Automation – Qualifying Criteria
Repetitive nature of tests: If the tests are repetitive in nature like regression tests, portability tests, compatibility tests etc, then automation can be considered. Regression tests – Tests that are run for every build/release Portability tests – Tests that are run on different OS or webservers Compatibility Tests – Tests that are run on different browsers or software components Tests run on production: The smoke tests( without data change) have to be completed within a very short duration of time to minimize the downtime of the production servers.
The approval of project management team for going ahead with test automation. availability of licenses People readiness Automation team available with required skills Project Readiness The project has reached a stage when test automation is estimated. stable functionality Tool readiness Tool decided.Test Automation – Prerequisites Application stability Stable GUI. Process Readiness The right automation framework is identified and communicated to the automation team. tool compatibility established. 6 .
Automation Readiness Check Framework should be functional Tasks allocation is understood Roles and Responsibilities are identified Communication and Escalation channels defined Automation Environment is ready Project Management Team informed • Includes Test Calls. Test data arrangement. configuration control etc. informal – stand up meeting 7 . local to shared staging. • Individual Roles and responsibilities are understood • Distribution lists. Escalation mechanism understood. kick off meeting. scripting standards • automation specific tasks like GUI objects maintenance and synching. • Environment readiness checklist is done • Formal – Automation plan signoff. communication matrix established. reviewing.
Test Methodology . PoC Research. not the tool Choose extensible test tools Separate test design and test automation Lower costs Jumpstart with a pre-trained team 1 2 Establi 3 sh Framew Prioritize Test Pack Test Strategy Test Pack Reengineering Assess Environment Application Architecture. Score test tool candidates Object Identification Proof of Concept / Prototyping Approval Script 5 Develop ment Test Scripts Stds Learning. Testing. Rework Dry Run Documentation Training Metrics (% Automation achieved) Process Improvements Maintenance Phase ork .Automated Key Considerations for automation Application/functionality stability. Reviews. Metrics from PoC re-used Automation Framework Design Test Scripting 6. Stability Test Pack Analysis Financial Resources Personnel Time-line Dependencies Identify Gaps Completed Environmental Assessment Determine priorities Identify Strategic Outlook Tool4 Evaluatio n. release plans Application architecture Test pack analysis for automatable test conditions/cases Interfacing application dependency Analysis of automation ROI Top 5 Best Practices for Automation Success Focus on the methodology. 7 Stabilizati on Script Integration. Evaluate.
Early Involvement Software Testing Life Cycle (STLC) Software Development Life Cycle ( SDLC ) Testing Activities Manual / Automation/ Performance Test Automation Specific Activities Performance Testing Specific Activities Requirement Analysis Test Strategy Test Planning Test Scenarios/ Conditions Identify features which can/ cannot be automated High level Automation Design / Framework Automation Strategy Design & Development of Automation Scripts •Identify business scenarios for Define Performance Testing performance testing Requirements Design & Coding Test Cases Traceability Test Environment Test Data Test execution Defect Tracking & closure Test Summary Report Defect Summary Report Design & Development of Performance Test Scripts Testing Test Script Execution Test Script Maintenance Performance Testing Analysis and Fine Tuning Performance Test Reports Structured and Organized Test Case Repository .
Framework Driven Automation Automation Test Scripts Re-usable Library Automation Design Document Test Automation Results / Metrics Automation Framework Application Maintenance Regression Testing Enhancement Modularized Automation Test Suite Automation Design Considerations Test Automation Standards / Guidelines Business Scenarios Test Automation Configuration Control Application Test Automation Tool Test Management Tool Test Environment Manual Test Case Repository Manual Test Procedures Test Strategy .
Automation Frameworks in Practice Types of Automation Framework Modularity Driven Data Driven Keyword Driven Hybrid .
even if the user interface changes Process Expertise Client References spanning across geographies Cost Effective solutions enriched by stable processes World class methodologies & tools Standards Complying with IEEE. ISO 9000:2000 Certified testing consultants & lead assessors with domain expertise .The Test Automation Life Cycle Customer Speaks….. SWCMM/CMMI.The same tests can be reused on different versions of an application. Back Automated test generation reduces manual effort up to 90% Test planning time reduced by up to 50% Test Execution Cycle reduced by 30% Reduced QA effort by 25% Modularity and Reusability .
synchronization points& functional validations • Dry Run 2 • • • • • Test Planning & Design 4 • • • • • • Test Execution Test Script Execution Reporting Results Defect Management Test Automation metrics Update scripts Prepare Operations Manual Automation Effort Estimation Test Strategy Test Framework Prepare Test Conditions/Cases Prepare Traceability Matrix 1 Decision to Automate 5 Maintenance of Scripts • Analyze business functionalities. application architecture • Economic feasibility – ROI analysis • Identify features which can/ cannot be automated • Periodic Updation of scripts with changes to existing functionalities / new requirements • Label and maintain the changes • Versioning scripts & other related Testware .Approach to Test Automation 3 Development of Scripts • Test Scripts • Identify & place re-usable components in reuse library • Add checkpoints.
in testing effort & cycle time Improved Planning and Focused testing effort Enhanced Coverage Minimal Manual Intervention and coding and hence reliable Regression Pack for Future Product Releases Reduces Go-To-Market time for an application Reduced Defect Density . Comprehensive – Build a suite of comprehensive tests that covers every feature Reusable – Reuse test cases created in various situations Maintainable – Easy maintainability and minimizes effort of maintenance Long Term Savings – Phased ROI based Automation .Value Proposition on Test Automation Fast – Runs Tests significantly faster with reduced time of testing lifecycle Reliable – Tests perform precisely the same operations each time they are run Repeatable – Repeat the same set of execution as many times desired. Programmable – Program sophisticated tests that bring out hidden information.
Process 15 .Challenges in Automation .
unstable Test Data – Test data issues. Operations cannot be performed on some objects.Challenges in Automation – Application Automation to keep pace with the rapidly changing application Standards not followed during development. modification of test data 16 . Batch processes – wait time and processing time Environment – Shared environment.
Backward compatibility of tool versions Difficult to use. nonuser friendly Memory cache size Nonavailability of support 17 .Tool Objects not recognizable by tool.Challenges in Automation .
Skill 18 .Challenges in Automation .
Test Automation – Framework Architecture APPLICATION UNDER TEST OBJECT REPOSITORY DATA FILES RECOVERY MANAGER TEST RESULTS QUICK TEST PROFESSIONAL QUICK TEST PROFESSIONAL SCRIPT REUSABLE ACTIONS LIBRARY FILES QUALITY CENTER VPN ` TERMINAL TERMINAL ` ` TERMINAL .
Tools Availability •HP-QTP •HP-WinRunner •Rational Robot •Compuware TestPartner •Segue Silktest Selenium Floyd Watir Frankenstein SWTbot JMeter 20 .
and Terminal emulator applications. . Siebel. ActiveX controls Visual Basic applications Note: Add-ins for special environments such as Java. SAP solutions.NET Windows and Web Forms. Web services. PeopleSoft.About QTP QuickTest Professional enables you to test Standard Windows applications Web objects. . Oracle.
5 6.1 8.2 9.0 5.2 8.5 9.6 .0 6.0 8.0 9.QTP Versions QTP QTP QTP QTP QTP QTP QTP QTP QTP QTP 10.
QTP – Add in Manager .
Keyword & Expert View Keyword View: Enables to create and view the steps of the test in a keyworddriven. Expert View: Enables to create scripts in the form of VBscript for each operation performed on the application. a corresponding row exists in the Keyword View . in which each step is a separate row in the table. Table-like view. Script editor and for each object and method in an Expert View statement. and each column represents different parts of the steps.
Keyword View .
Expert View .
Enhance your test and/or add programming statements .Creating QTP Script Record a session Build an object repository Insert checkpoints into your test Broaden the scope of your test or component by replacing fixed values with parameters.
Test Results .
QTP Recording Modes Recording Modes: Standard Recording Mode Records the objects in your application and the operations performed on them. Low-Level Recording Mode Records mouse clicks and keyboard input with the exact x.and y-coordinate QTP Default Mode : Standard Recording Mode .
For example. . it might take a few seconds: for a progress bar to reach 100% for a status message to appear for a button to become enabled for a window or pop-up message to open You can handle these anticipated timing problems by synchronizing your test to ensure that QuickTest waits until your application is ready before performing a certain step. your application may not always respond with the same speed.Synchronizing your Tests When you run tests.
Synchronization Methods Synchronization point Exist or Wait statements Increase the default timeout settings .
Synchronization Point A synchronization point is a line in the test script that instructs QTP to wait for a certain response from the application during playback. .
And also it generates the WaitProperty statement in the Expert View. . which instructs QuickTest to pause the test until an object property achieves the value you specify. When you insert a synchronization point into your test. QuickTest WaitProperty step is displayed in the Tree View with the icon for the selected object.Insert ->Synchronization Point Synchronization point.
A comment is a free text entry that spans an entire row.Usage of Comments Comments . .
When the test runs. QuickTest searches for the object that matches the description it learned.Object Repository When you create a test by recording. . QuickTest learns the properties of test objects and are stored in Object repository.
Object Identification .
Object Identification – Best Practices 37 .
Object Repository .
Object Spy .
Constructs Conditional Statements If . Then Else End If ElseIf … Then Loop Statements For … Next Do… while Do… until ..
"Notepad dialog exists" Else reporter.Exist(2) Then reporter.ReportEvent micPass. "Notepad dialog exists" End If .. "Notepad dialog".Else Example If window("Notepad").If. "Notepad dialog".ReportEvent micFail.
Checkpoints A Checkpoint is a verification point that compares a current value for a specified property with the expected value for that property .
How Checkpoint Works ? When you add a checkpoint. the checkpoint fails . When you run the test. If the results do not match. QuickTest adds a checkpoint with an icon in the test tree. and adds a Check CheckPoint statement in the Expert View. QuickTest compares the expected results of the checkpoint to the current results.
Checkpoint Types .
.Output Value An Output Value is a value captured during the test run and entered in the run-time Data Table for use at another point in the test run.
This process.Parameterization QuickTest enables you to expand the scope of a basic test by replacing fixed values with parameters. known as parameterization. greatly increases the power and flexibility of your tests. .
Parameter Types Test/action parameters Data Table parameters Environment variable parameters Random number parameters .
Click 'Other Way Set MyObject = Browser("Name:=Untitled Page").Page("Title:=Untitled Page")."html tag:=A").Link("text:=Login To HCL LOS".Advanced 'Record Method Browser("Untitled Page").Page("Untitled Page").Click .Descriptive program .Page("Title:=Untitled Page").Link("Login To HCL LOS").Click 'One way 'Browser("Name:=Untitled Page").Link("text:=Login To HCL LOS"."html tag:=A") Myobject.
. point to the Quality Center icon. type the URL address of the Web server where Quality Center is installed To view the current Quality Center connection. so you must provide a user name and a password Connecting QTP to TestDirector: The connection process has two stages. The project stores tests or components and run session information for the Web site or application you are testing. First. you connect QTP to a local or remote Quality Center Web server. The Quality Center Connection dialog box opens In the Server box. This server handles the connections between QTP and the Quality Center project Next. To open the Quality Center Connection dialog box. double-click the Quality Center icon Note: Quality Center projects are password protected. you choose the project you want QTP to access.Integration of QC with QTP: To connect QTP to Quality Center Choose Tools > Quality Center Connection or click the Quality Center Connection toolbar button.
Integration of QC with QTP (Contd): QC Server Name Working with Quality Center Connectivity Add-in If you are working with Quality Center 8.6 or earlier.0. you must manually install the TestDirector Connectivity Add-in that corresponds to your TestDirector version on your QTP Computer . this add-in is installed automatically To work with TestDirector 7.
(From the Save QTP Test dialog box.Integration of QC with QTP (Contd): Saving Tests to a QC Project Note that the Save Test to Quality Center dialog box opens only when QTP is connected to a TestDirector Project To save a test directly in the file system. click the File System button to open the Save QTP Test dialog box. you can return to the Save Test to TestDirector Project dialog box by clicking the Quality Center button) .
with this tab we will get the Results Summary of that particular test script.Integration of QC with QTP (Contd): Running the Test Scripts Mapping the test cases into Test lab In the Run Stage. In this window we have a tab called “Launch Report”. The Status Tab will give the status of the Test Script during the execution of the Test Script and after executing the script Host Number When you click on the left side run button in the test lab. . for the Host Tab we have to specify the Host Number on which you want to run the test scripts. you will get one window which is shown on the right side of this slide.
Integration of QC with QTP (Contd): Disconnecting QTP from Quality Center: You can disconnect from a Quality Center project or a Web server. QTP’s connection to that project database is automatically disconnected . Note that if you disconnect QTP from a Web server without first disconnecting from a project.
Demo DEMO 54 .
92 2) 10.123 4) 10.104.103.104. Tester3.73/qabin/ Login credentials Login ids .179 3) 10.91. Training licenses.104. Phone 9791037245) Constraints of usage 1.104.57.Tester2.QC Access – IV & VS Lab IP addresses of the USAA Test lab machines 1) 10.57. Do not use at the cost of impacting assigned work or schedule 55 .in.57. 15 concurrent licenses 2. Tester4 (case insensitive) Passwords – (do contact Dheenang@hcl. Can not be used for evaluation or project purposes 3.57.100 URL to access Quality Center http://10.
Recovery Manager.What is expected from you Practice all learnt knowledge Practice the features extensively using such as Synchronization. Custom report etc. Verification. Bring the learning to use in assigned work / schedule. as applicable When in doubt about a feature or functionality – please get the clarifications by Contacting others around Contacting speakers of this presentation Contacting software testing community on arKMedis Browsing on internet When you accomplish some thing new – please share the knowledge On software testing community on arKMedis With IV&VS academy which takes care of Learning / Growth 56 .
passing dynamic parameters from QC to QTP Problem – Develop Custom Defined Functions to connect RDBMS Data Base Demonstrate the creation of Custom functions to connect RDBMS Data base & execute queries Problem – Develop Customized HTML/XML Result file Demonstrate the creation of Custom functions to create/update user defined result into HTML/XML file Problem – Result notification via email Demonstrate the creation of Custom functions to notify the stake holders on Test Execution status via email 57 . Edit & Verify) – Mandatory for all Demonstrate the creation of Automation scenarios for LOS – Module which includes Create. Problem – Usage of Check Points Demonstrate the usage of SQL.What is expected from you A few exercises Problem – Automate LOS – Module (Create. XML check points Problem – Usage of Recovery Manager Demonstrate the usage of Recovery Manger features Problem – QTP Integration with QC Demonstrate the integration of QC with logging defects via QTP scripting. Edit & Verify.
Submit separate documents for responses to each problem 1.Last Date for completion: 20 days from circulation of materials 58 . 2.Each response must be provided with the step-by-step explained along with screen shots wherever possible 3.Use the demo/training version of the licenses for practice purpose. Please mention “the names of the people” and “problem you are submitting the response for” on the first page.No more than 2 people can be teamed up for answering a question. Do not use any client provided licenses as far as possible 4.What is expected from you … continued Conditions : Do not combine multiple solutions into one document.
Questions and Answers 59 .
This action might not be possible to undo. Are you sure you want to continue?
We've moved you to where you read on your other device.
Get the full title to continue listening from where you left off, or restart the preview.