- ISQT International

advertisement
Performance Optimization In QTP Execution
Over Video Automation Testing
Speaker : Krishnesh Sasiyuthaman Nair
Date
: 10/05/2012
1
Importance Of Performance Optimization
• Prevent unnecessary wastage of test resources.
• Get faster test results thus reducing cost in
automated testing.
2
Video Testing
• Involves different interlinked components like
streaming servers, settop box racks, IR blasters etc.
• Need support from multiple applications and
frameworks which provides OCRs, Image
comparisons, SNMPs, trace processing etc
3
HPQC-QTP Framework In Video Testing
• Requirements and test cases will be available in QC
Test Plan. QC provides a template in Test Plan for
storing the test scripts, allows them to be added to QC
Test Set, executes and saves result to QC test set.
• Provides feature to store defects in the defects area of
QC.
4
QTP Test Execution From QC
5
Problems : QC-QTP Automation
Development & Execution
• Interruptions during long execution due to QC timeouts
and network issues.
• In the case of multi-location, its not possible to sync
the local agile development version repository with
mapping and execution of test cases in QC test plan.
6
Problems : QC-QTP Automation
Development & Execution Continued
• Manual testers and other QC users will also be able to
view the scripts and edit configuration files. This is not
necessary.
• Network bandwidth utilization is too much during
execution due to frequent connecting local machine
QC client to QC server for transferring reports,
initiating new runs etc as execution needs multiple
active QC sessions.
7
Long Test Execution Cycle Time
In video testing each script will take around 10-15
minutes and a typical release testing will contain
around 200-400 scripts , will be around 20-25 box
types to validate. On a minimum there will be 4000 test
runs and will take around 27 days if executed in one
machine.
8
No Support For Agile Development &
Coupled Execution
• There is no continuous integration available in QCQTP default framework.
• In rigorous script development environment when
multiple people works on the same library files, there
are chances of bugs getting added to the impacted
areas of code change and need to executed and
validated frequently, with minimal effort, which is not
possible currently.
9
Need For Common Local Subversion For
Execution
• Since video automation framework using QTP is
huge(contains lot of images, xmls , data tables, vbs
file, csv files etc ), the execution need to be as local as
possible because of multiple reasons.
• Its always an overhead in maintaining script and
framework in two locations(subversion & QC) has
wastage of time and space.
10
Network Bandwidth Usage Due To Active
QC Sessions
As discussed in previous slide an execution can
extend up to 27 days, which need to be shortened
through parallel executions in multiple machines, say
10 machines it will come down to 2.7 days. But, this
will need 10 active QC sessions polling frequently to
client machines for execution triggering and result
upload. Since framework itself is big, the file transfer
between server to client will eat up lot of network
bandwidth.
11
Solution : Performance Optimization In
Framework
Root causes for the problems mentioned in the
previous slides were found out and the converged
causes are the following.
– Continuous integration support not available.
– Execution need to be triggered locally with minimum
interaction with the QC server.
A test driver created with QTP AOM and QC OTA will
be sufficient to solve the major bottle necks.
12
Continuous Integration In
Script Development
Continuous integration involves integrating code early
and often so as to avoid the pitfalls of ‘integration hell’.
Aim is to reduce rework and reduce cost and time.
There is a need to have version based execution and
this support is added with the help of test driver.
13
Minimal Interaction With QC Server
With local execution framework, the long download
times of script and framework files from QC is reduced
along with reducing the interaction of QC during
execution with local client executing machines. Also a
configurable tool reboot time is introduced which
removes the unexpected memory leaks associated
with long duration executions.
14
Video Test Automation With Test Driver
15
Video Test Automation With Test Driver
Continued
• Driver retrieves the details of test set created in QC.
• Test lab added test cases with supporting files are
downloaded to local QTP execution machine will be
the latest version or specific version in subversion.
• Execution trigger will be added to windows scheduler
for daily runs.
• Execution results and logs will be available in QC Test
Set on completion of execution.
16
Test Execution Duration Difference
Execution initiated Without Driver
Total Scripts
Duration Hrs
Execution Initiated With Driver
Total Scripts
Duration Hrs
200
34
200
28
400
67
400
54
There is more than 10 hrs execution duration saving during execution. This is
a definite advantage in video test automation space, since we can free up the
hardware and software tools and resources blocked for this execution cycle &
advantage is thus tremendous.
17
Script Level :
Performance Optimization
• Each individual scripts need to be optimized
separately for better results.
• There are a set of guidelines to be followed in the
scripts and tool settings for better performance .
18
Conclusion
Performance optimized framework provides excellent
foundation for automated testing in video test
automation space. As manual execution is really tiring,
the cost benefit a well optimized framework provides is
really immense.
19
Question
&
Answers
20
Reference
• QC, QTP Documentation Library & HP ALM Open Test
Architecture Reference.
• Tata Elxsi Automation Information Database.
21
Thank you
ITPB Road, Whitefield
Bangalore, India 560 048
Tel
+91 80 22979123
Fax
+91 80 28411474
e-mail info@tataelxsi.com
www.tataelxsi.com 22
Download