Mikhail Holovaty - Effective automated testing of web-projects

16
Lohika Effective automated testing of web-projects Mikhail Holovaty 06, 01, 2011

description

Presentation made by Mikhail was shared during IT Jam Meet&Mix 2011.Key points of presentation:- aspects of effective functional testing of a large web project- how to manage with a large number of regression scripts- Lohika ALP automation system. Best practices of reporting and results analysis

Transcript of Mikhail Holovaty - Effective automated testing of web-projects

Page 1: Mikhail Holovaty - Effective automated testing of web-projects

Lohika

Effective automated testing of web-projects

Mikhail Holovaty06, 01, 2011

Page 2: Mikhail Holovaty - Effective automated testing of web-projects

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

Page 3: Mikhail Holovaty - Effective automated testing of web-projects

Cyclic Development Process

Simplified development cycle that includes automation test scripts implementation, execution

and analysis

Page 4: Mikhail Holovaty - Effective automated testing of web-projects

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

Page 5: Mikhail Holovaty - Effective automated testing of web-projects

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

Page 6: Mikhail Holovaty - Effective automated testing of web-projects

Dependent Funtionality

Authorization

List Item

Bidding

A new Item is required to exercise bidding

Log in is required to list an item

Page 7: Mikhail Holovaty - Effective automated testing of web-projects

Functional Test Report

Test Steps Requirement Tag

Test Case

Page 8: Mikhail Holovaty - Effective automated testing of web-projects

Functional Test Script Log

Page 9: Mikhail Holovaty - Effective automated testing of web-projects

Test Step Error

Page 10: Mikhail Holovaty - Effective automated testing of web-projects

Funtional Group Analysis

Page 11: Mikhail Holovaty - Effective automated testing of web-projects

Functionality Statistics

Bidding

Sell Item

AuthorizationFail

Skip

Pass

Page 12: Mikhail Holovaty - Effective automated testing of web-projects

Appendix:

ALP system details

Page 13: Mikhail Holovaty - Effective automated testing of web-projects

Deployment

Page 14: Mikhail Holovaty - Effective automated testing of web-projects

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

Page 15: Mikhail Holovaty - Effective automated testing of web-projects

Functional TestTest class Test case

Test context Webdriver

Methods Test steps

Components

Assertion Expected result

validation

Requirement tag

Step description

Input Parameter

Page 16: Mikhail Holovaty - Effective automated testing of web-projects

Results Model