wavit - platform for automated testing

18
PLATFORM for Automate Web App Testing Automate Web App Testing Wavit Wavit © QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Upload: qatestlab

Post on 21-Dec-2014

1.319 views

Category:

Technology


6 download

DESCRIPTION

http://qatestlab.com WAVIT - is a platform for Automated Web App Testing developed by company QATestLab. WAVIT framework is based on Selenium test tool. It combines power logging with log4j, JavaMail API for automatic reports, TestNG for test configuration and execution, implementation of HTTP methods using HttpClient for integration with TestLink.

TRANSCRIPT

Page 1: WAVIT - Platform for Automated Testing

PLATFORM for

Automate Web App TestingAutomate Web App Testing

WavitWavit

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Page 2: WAVIT - Platform for Automated Testing

Tools

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Confluence Confluence - is a simple, practical web - is a simple, practical web application that makes it easy to collaborate and application that makes it easy to collaborate and manage knowledgemanage knowledge

TestLink TestLink – is a Web-based Test management and – is a Web-based Test management and software testing execution tool.  This tool includes reporting software testing execution tool.  This tool includes reporting and requirements tracking and cooperates with and requirements tracking and cooperates with well-known bug tracking systems.well-known bug tracking systems.

SeleniumSelenium – is a test tool that allows to write automated web – is a test tool that allows to write automated web application UI tests in any programming language against any HTTP application UI tests in any programming language against any HTTP

website using any mainstream JavaScript-enabled browser.website using any mainstream JavaScript-enabled browser.

JIRAJIRA - flexible web based bug tracking, issue tracking, - flexible web based bug tracking, issue tracking, task tracking, and project management software solution task tracking, and project management software solution used for open source and enterprise projects.used for open source and enterprise projects.

Page 3: WAVIT - Platform for Automated Testing

Software Testing Process

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Writing test-cases

Manual testing

Writing automatedscripts

Bug reports

Test results

Release

Running tests

Functional requirements analysis

Page 4: WAVIT - Platform for Automated Testing

Requirements AnalysisSoftware testing process, as well as development, begins Software testing process, as well as development, begins with the analysis of requirementswith the analysis of requirementsSoftware testers determine whether the stated requirements Software testers determine whether the stated requirements are unclear, incomplete, ambiguous, or contradictoryare unclear, incomplete, ambiguous, or contradictoryRequirements analysis can be a long and arduous process Requirements analysis can be a long and arduous process during which many delicate psychological skills are involvedduring which many delicate psychological skills are involved

TasksTasks: :

High Level Test PlanHigh Level Test PlanDevelop Functional validation matrixDevelop Functional validation matrixIdentify test cases to automate Identify test cases to automate Begin writing Test Cases based on Functional Validation matrixBegin writing Test Cases based on Functional Validation matrixDefine area for Stress and Performance testingDefine area for Stress and Performance testingBegin planning the number of test cycles required for the project, Begin planning the number of test cycles required for the project, and Regression Testing. and Regression Testing.Review test environments and lab, both Front End and Back EndReview test environments and lab, both Front End and Back End

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Page 5: WAVIT - Platform for Automated Testing

Writing Use Cases

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Use CasesUse Cases ddescribe system’s escribe system’s behavior by detailing behavior by detailing

scenario-driven threadsscenario-driven threads..

Used Tools Used Tools –– ConfluenceConfluence

Page 6: WAVIT - Platform for Automated Testing

Writing Test Cases

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Test CaseTest Case – is a set of conditions or – is a set of conditions or variables under which a tester will variables under which a tester will

determine whether an application or determine whether an application or software system meets specificationssoftware system meets specifications

Used Tool Used Tool – – TestLinkTestLink

Page 7: WAVIT - Platform for Automated Testing

Manual Testing

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Manual testing is used on the Manual testing is used on the first stages of software testing.first stages of software testing. Test case covers the requirement or Test case covers the requirement or

specification being tested, steps for specification being tested, steps for

testing it, and its expected result.testing it, and its expected result.

Bugs are reported and tracked in Bugs are reported and tracked in

bug tracking systembug tracking system..

Used bug tracking systemsUsed bug tracking systems– – Jira, MantisJira, Mantis

Page 8: WAVIT - Platform for Automated Testing

Testing Automation

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Testers determine first areas of Testers determine first areas of functionality, which will be covered with functionality, which will be covered with

automated tests. automated tests. This is very important phase.This is very important phase.

Used automated testing toolUsed automated testing tool – –Selenium RCSelenium RC

Page 9: WAVIT - Platform for Automated Testing

Writing Automated Scripts

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Used toolUsed tool – –EclipseEclipse

The most important thing before attempting toThe most important thing before attempting towrite a routine to automate a software process is write a routine to automate a software process is to be familiar with the process itself.to be familiar with the process itself.

TasksTasks: : •Determine structure of automated scriptsDetermine structure of automated scripts •Determine requirements to automated scriptsDetermine requirements to automated scripts•DistributeDistribute test-cases among team of software testers test-cases among team of software testers

Page 10: WAVIT - Platform for Automated Testing

Debugging of Tests

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Testers debug written automated tests and Testers debug written automated tests and receive first results.receive first results.

TasksTasks: : •We determine rules of We determine rules of distributiondistribution test-cases between test-cases between software testerssoftware testers •We describe We describe criterioncriterions of successfully run testss of successfully run tests•We work out procedure of defects processingWe work out procedure of defects processing(what to do if defect was found)(what to do if defect was found)

Just successfully debugged Just successfully debugged tests are added to regression tests are added to regression testing packagetesting package

Page 11: WAVIT - Platform for Automated Testing

GUI Interface

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Сompany QATestLab developed the specialized GUI interface for the launching of the automated tests.

This application allows to use a platform without the necessity of IDE installing and execute fine-tuning.

Page 12: WAVIT - Platform for Automated Testing

Test Running

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Selenium RC is great for testing complex Selenium RC is great for testing complex

AJAX-based web user interfaces under a AJAX-based web user interfaces under a

Continuous Integration system. It is also an ideal Continuous Integration system. It is also an ideal

solution for users of Selenium Core or Selenium solution for users of Selenium Core or Selenium

IDE who want to write tests in a more expressive IDE who want to write tests in a more expressive

programming language than the Selenese programming language than the Selenese

HTML table format customarily used with HTML table format customarily used with

Selenium CoreSelenium Core

Before test running Before test running SeleniumSelenium server starts and server starts and automatically launches and kills browsers, and acts as a automatically launches and kills browsers, and acts as a HTTP proxy for web requests from them.HTTP proxy for web requests from them.

Page 13: WAVIT - Platform for Automated Testing

Result’s Storage

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Every automated test corresponds with Every automated test corresponds with test-case described in test-case described in TestLinkTestLink. .

After test running the results of After test running the results of implementation of every test-case are implementation of every test-case are automatically put down to Testlink.automatically put down to Testlink.

Platform for Automate Web App Platform for Automate Web App TestingTesting from company from company QATestLabQATestLab uses uses

TestLinkTestLink for storing the results of each test for storing the results of each test running.running.

Page 14: WAVIT - Platform for Automated Testing

Test Running Results

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Passed

Test-case was run Test-case was run successfullysuccessfully. .

No problems were No problems were detected.detected.

Test-case was run Test-case was run successfullysuccessfully. .

No problems were No problems were detected.detected.

Failed

Test-case was executed with errorTest-case was executed with error..

This means that expected result This means that expected result does not agree with actual does not agree with actual result. In this case we use result. In this case we use

manual testing for this test-case.manual testing for this test-case.

If defect will be found during If defect will be found during manual testing it will be reported manual testing it will be reported

to bug tracking system.to bug tracking system.

Test-case was executed with errorTest-case was executed with error..

This means that expected result This means that expected result does not agree with actual does not agree with actual result. In this case we use result. In this case we use

manual testing for this test-case.manual testing for this test-case.

If defect will be found during If defect will be found during manual testing it will be reported manual testing it will be reported

to bug tracking system.to bug tracking system.

Blocked

Conditions for running this Conditions for running this test-case were not test-case were not

complied.complied.

Conditions for running this Conditions for running this test-case were not test-case were not

complied.complied.

Test Error

Error in script of Error in script of automated testautomated test. . For exampleFor example, ,

call to non-existing call to non-existing element.element.

Error in script of Error in script of automated testautomated test. . For exampleFor example, ,

call to non-existing call to non-existing element.element.In Process

Defect was found in Defect was found in previous launching.previous launching.

Defect was reported to Defect was reported to bug trackingbug tracking

system.system.

Defect was found in Defect was found in previous launching.previous launching.

Defect was reported to Defect was reported to bug trackingbug tracking

system.system.

Page 15: WAVIT - Platform for Automated Testing

Result Analysis

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Before every launch of automated tests platform creates build in Testlink. It gives possibility to watch the life cycle of defect and general state of the system at any time from the beginning of testing automation.

After running of the automated tests a After running of the automated tests a software tester analyzes received results. software tester analyzes received results.

All defects that were revealed during All defects that were revealed during analysis are tested manually and added to analysis are tested manually and added to bug tracking system.bug tracking system.

Page 16: WAVIT - Platform for Automated Testing

Automated test Support

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Our platform for Our platform for Automate Web App Automate Web App TestingTesting gives the effective and not gives the effective and not needing in difficult service level of needing in difficult service level of abstraction, allowing to hold the automated abstraction, allowing to hold the automated tests in the actual state at minimum tests in the actual state at minimum expenses.expenses.

Support of the automated tests is necessary for the Support of the automated tests is necessary for the decision of classic problem of automated testing – decision of classic problem of automated testing – instability of test scenarios which stop to work after instability of test scenarios which stop to work after any change in testable application in the process of any change in testable application in the process of development.development.

Page 17: WAVIT - Platform for Automated Testing

Testing Schedule

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

The daily test running of the automated tests The daily test running of the automated tests is performed on current project build. It can be is performed on current project build. It can be both daily running and running once or twice both daily running and running once or twice in a day.in a day.

Running on product version presumes the Running on product version presumes the complete test data cleaning, that gives complete test data cleaning, that gives possibility to make deep and full functional possibility to make deep and full functional testing – from data creation to data removal.testing – from data creation to data removal.

Page 18: WAVIT - Platform for Automated Testing

Contact Us

© QATestLab 2005-2009 All rights reserved. www.QATestLab.com

Address: 21, Garmatna str., Kiev, Ukraine

Phone: +380 44 406 70 24 +380 66 601 85 40

E-mail: [email protected] www: www.QATestLab.com