Thursday, March 19, 2009

Automation Test Life Cycle

Testing Process in QTP


Automation Life cycle in QTP would be like this

1. Preparing for record/generate script

2. Recording/Generating the script

3. Enhancing the script

4. Debugging the Script

5. Executing the script

6. Analyzing the Results

7. Reporting the Defects

Brief description about each phase

1. Preparing to record: Preparing/making ready QTP to record or to generate script, means gathering pre-requisites before developing the test.

(a) Check QTP is available

(b) Check Test Cases are available

(c) Check respective Add-In is installed in QTP

(d) Check application is available or not (if you are using Object Repository)

if above prerequisites are available, you can develop the test in QTP. if your application under development, you should use Descriptive Programming to develop the script.

2. Recording/Generating Script: Now, you can develop the script in QTP or Record Test in QTP. because we have all requirements to develop the script. we make ready QTP in previous step itself.

3. Enhancing the Script: Adding the Steps manually in Test or any function calls, Action calls, if any Loops for no.of iterations, Check Points, Output values, Accessing XML Files, Loading Environment values, Executing any applications or opening web applications, Creating Variable Objects, Creating instances, using Utility Objects, etc., these all should done manually according to our requirements.

4. Debugging: Executing the Script in an user desired fashion called debugging. to find the values of variables and changing the values of variables, checking the flow of script, checking the step in, step out, step over for function calls and action calls, We can pause the test where ever we want and check the forward steps one by one. debugging the iterations for loops like For Next, For Each Next, While, Do Until…etc., these all can be analyze by using the Debugging.

Debug viewer Pane: It is used for viewing the values of variables and changing the values of variables in this contain Watch expressions, Variables, Command Tabs

Watch Expressions: It is used to check the particular variable value and also to change the value of that variable

Variables: It is used to watch all the variable values up to previous step.

Command Tab: It is used to change the variable values in a Test

** If we assign a value to variable in debug viewer pane before assigning the value to that variable in Script would be overwritten by latest expression.(It may be in Script or in Debug Viewer Pane)

the assigned values automatically updated in Variable Tab and Watch expression tabs

5. Executing the Test: After completion of Debugging, we can go for execution of the Test. Executing test will not stop till the end of Test.It pauses if any error occurs or any unpredictable error occurs,

Some times we have no. of iterations of loops or no. of function/action calls, Data Driven Testing.. pausing the values from different sources to Test to perform parametrization/retesting/regression testing. here, before executing the test keep one or two iterations for loops, one or two values from external source and debug. if we feels that all iterations and data is getting from source are perfect, we can keep all iterations for loops and database sources then execute the Tests. It makes your work efficient, effective and optimized way.

6. Analyzing the Results: After Test Execution, QTP will show you the results in Results Pane. here, we will get how many test cases are failed and how many test cases are passed, Check point validations, Reporter events, Run Time Data Table, some times the results can be sent to run time data table. etc.,

7. Reporting the Defects: If we found any defects in Results Pane, we have to report the defects to Test Lead or if we have Defect Tracking tool, we will report those defects in Defect Tracking Tool and also we can keep the details about that like defect found by, identified on, assigned by, assigned to, status, etc.,

if QC is available, we can send the results directly to QC. because we have option in QTP and also in Results pane to connect with QC.

Please comment on my posts…

Thanks & Regards

Baba Fakruddin.D

No comments: