Lohika
Effective automated testing of web-projects
Mikhail Holovaty06, 01, 2011
Foreword
We’ll talk about
•Aspects of effective functional testing of a large web project
•How to manage with a large number of regression scripts
Our experience: •regression testing of eBay Classifieds, 1500 scripts•Selenium 1 and 2, web services•Custom automation system and utilities
Cyclic Development Process
Simplified development cycle that includes automation test scripts implementation, execution
and analysis
Automation Efficiency
TA creation / N + TA errval + TA upd < TM val
N - iteration number since scripts creationTA creation - time to create automation scriptsTA errval - average iteration time to understand reasons of failed scriptsTA upd - average iteration time to update scriptsTM val - average iteration time of manual validation
Error Validation
Failed automation test cases require human interaction to understand fail reason.
Logging writes automatically all actions performed by script into log file.
Test result model is used for general analysis of a large amount of failed test cases.
• error reason• requirement link• dependent functionality• execution time
Dependent Funtionality
Authorization
List Item
Bidding
A new Item is required to exercise bidding
Log in is required to list an item
Functional Test Report
Test Steps Requirement Tag
Test Case
Functional Test Script Log
Test Step Error
Funtional Group Analysis
Functionality Statistics
Bidding
Sell Item
AuthorizationFail
Skip
Pass
Appendix:
ALP system details
Deployment
xUnit – Test Case Mapping
Test Case xUnit Test
Test Case Class
Test Case Execution Class Instance
Test Step Method
Steps Execution Order Method Dependency
Fail Exception
Requirement Link, Traceability Matrix
Group Tag
Functional TestTest class Test case
Test context Webdriver
Methods Test steps
Components
Assertion Expected result
validation
Requirement tag
Step description
Input Parameter
Results Model