Automation Test Strategy

This document details the Automation test strategy of the <Project Name> system.  This document includes information about the test’s objectives, scope, and approach.  In addition, it provides a list of the roles and responsibilities for personnel participating on the test, as well as operational procedures that will be used during the test and a description of the test environment requirements.
The document sections are organized as follows:

·         Application Background describes the overall project objectives

·         Test Objectives describes the overall test objectives.

·         Scope describes the automation testing scope.

·         Test Environment describes the hardware, software, data, and staffing needs for the test effort. This section also describes any dependencies on the development environment.

·         Test Approach identifies the automation testing methodology that will be followed for the application under test.

·         Roles & Responsibilities describes the roles and responsibilities of every team member

·         Deliverables outlines the deliverables.

·         Assumptions, Dependencies, and Risks describe the assumptions, dependencies, and risks related to the automation tests.

·         Work Plan describes the main milestones and outlines the project plan with respect to testing of the application under test.
·         Reports that will be shared during automation process

<Describe the project overview>

The objectives of the project are to perform the Functional Test Automation for <Project Name> using tool <Automation Tool Name>. Test Team are to ensure automation test scripts are generated and executed, and the corresponding test execution reports are created for the XXXXX  project.

The main objectives of test automation are
·         To speed up a software testing process, and to reduce software testing cost  and time during a software life cycle
·         To increase the quality and effectiveness of a software test process by achieving pre-defined adequate test criteria in a limited schedule
·         To reduce manual testing activities and redundant test operations using a systematic solution to achieve a better testing coverage.


The scope of the project is to perform the Functional Test Automation for <Project Name>. In addition to the above, the existing test cases will be reviewed and should be tweaked to improve the quality of the test cases. Also wherever required new cases have to be created to ensure that maximum functional test coverage is obtained. Up on completion of reviewing/enhancing/creating new test cases,  the team will automate the feasible test cases and deliver the test scripts to <Project Name>.

Also Automation suite should help <Project Name> QA team to perform the regression testing for upcoming releases.

<Investigate the test areas and define here in test scope section>

Test Client Workstations
Core 2 Quad or greater
2GB RAM or greater
Window server2003/Window 2008/Window 7
Internet Explorer 7
Firefox 3.6+
MS Office2010
Application client workstations
Web Servers

Application Servers

Database Servers

5.1.            System Architecture Diagrams

The approach to automation testing consists of executing testing in stages, which become incorporated into the overall project development life cycle.  Multiple execution cycles may occur in the course of the testing project, based on the assessment of the quality of the test.
The generic high-level stages, which will be performed by the test team during the course of testing the <Project Name>, will include:
·         Phase 1 Test Planning. Automation Test planning..
·         Phase 2 Environment Setup. Test team will plan and setup test environment
·         Phase 3 Test Script Design and Development. Preparation of test data and development of detailed test scripts. 
·         Stage 4 Test Script Executions. Execution of test scripts, management of test results and utilization of defect tracking process.
·         Phase 5: Scripts Maintenance: Scripts maintenance

6.1.            Phase 1: Test Planning

6.1.1.      Application Understanding

The set of identified automation test engineers will take part in a series of session to understand the application functionality existing in <Project Name> application.
Development Team Lead, Fictional Test Lead and Automation Test Engineer will conduct demo sessions on applications functionality.

6.1.2.      Test Case Selection and Review

The phase will involve the Test Case selection and Review. In order to start with the review, QA Lead should provide access to the existing test cases to Automation Team that has been already written by internal QA team. Automation team and QA Lead will take stock of all the test cases and segregate them as per the functional understanding which has been achieved in application understanding phase. QA Lead will identify the candidate test cases which need to be automated. Automation Engineer will review those test cases and will mark comments in case any ambiguity.  In case any steps missing or any enhancement required improving the quality of test case QA lead will update test cases with the help of automation engineer. These test cases will again reviewed by automation engineer. After successful review selected test cases will be published to entire team.  While coming to classification of test cases, Automation team recommends in such a way that there will be 3 categories on how the test cases will be looked into.  <Depending upon project situation>
·         Sanity Test Cases
·         Regression Test Cases
·         UAT Test cases


6.1.3.      Automation Tool

Automation Tool will be selected using POC (Proof of Concept) document

6.2.            Phase 2: Environment Setup

In this phase automation team will prepare test environment.

6.2.1.      Automation Tool Selection and Setup

Automation tool will be selected and environment will be prepared accodonglily. In case automation team needs some hands on experience few practices will be performed by automation team to be capable in that tool.

6.2.2.      Under Test Application Setup

QA lead will help automation team in under test application installation. An independent application environment will be required for automation team. Only automation team will work on that environment.
·         QA lead will assure that application environment is available and it’s independent to automation team.
·         Automation team will assure that automation tool environment is available.
·         Support team will help automation team in case of any issue.

6.2.3.      Test Data Preparation

In case if test data required for testing, Automation team with the help of manual testing team will prepare the test data. In case if automation is data driven then complete data will be prepared at this stage.

6.3.            Phase 3: Test Script Development

At this phase test scripts will be designed and developed in selected automation tool. All selected test cases will be developed at this stage. Automation tester will verify all test cases are automated accordingly. Below mentioned rules should be followed in test case development.
·         Naming conventions of scripts.
·         Adding proper comments for future reference.
·         Coding Standards defined as per the framework document.
·         Validating the re-usable functions/ scripts for handling few challenges during automation.
·         Tweaking the scripts for better execution

6.4.            Phase 4: Test Script Executions

6.4.1.      Scripts execution

Automated test scripts that were prepared in phase 4 will be executed at this stage. Automation team will execute all test scripts.

6.4.2.      Bug Reporting

In case if some bugs found in scripts execution stage those bugs will be reported the bug reporting portal.

6.4.3.      Reports Sharing

Automation team will share the automation scripts execution reports and will hand over the scripts to QA lead.

6.5.            Phase 5: Scripts Maintenance

Automation team will be responsible for scripts maintenance.  If changes occurs in application automation team will update the scripts accordingly. Also the scripts will be modified in such a way that all comments will be noted before enhancing the scripts for scripts issues or with respect to any change in application UI/functionality.


Project Manager
·      Review the automation test strategy.
QA Manager
·      Approves the test automation strategy
QA Lead(Manual Testing)
·      Responsible for automation test cases selection.
·      Responsible for application environment stability.
Automation Lead
·      Create Functions and establish libraries for new or existing projects
·      Create automated tests
·      Liaise with Regression Tester
·      Provide training and assistance to Automation Test Analysts.
·      Manage whole automation test process
Automation Test Analyst
·      Create Functions and establish libraries for new or existing projects
·      Create automated tests
·      Liaise with Regression Tester
Manual Tester
·      Create manual test cases for automation.
·      Raise defects in defect tracker
·      Execute the automated test scripts created by automation team

Deliverables Mode
Automation Test Strategy/Plan
Word Document
Test Case Review Report
Automation Framework Document
Word Document
Automation Test Scripts
Execution Reports

9.1.1.      Assumptions

·         The test lab is complete; all web servers, application servers, and database servers have been acquired, installed, and tested.
·         The test lab includes client desktops running all of the browser/operating system combinations required to test the <Project Name> system. 
·         The test lab provides access to third party vendors.
·         The test lab’s databases have sufficient data to test all major functional business requirements of the <Project Name> system. 
·         All requirements for the project have been implemented into the product.

9.1.2.      Dependencies

·         The test environment must be functional.
·         The <Project Name> application software must function properly and be stable in order to develop the automation test scripts
·         Automation test environment is independent of manual testing and development environment

9.1.3.      Risk & Mitigation Plan

If any assumption of dependencies is not met, test project may not be completed on time or may go over budget.

Any script issue during the execution of
test scripts in batch mode
Automation team will get the script issue resolved on or before the next batch test execution

More than automating 75% of test cases
will have an impact to the timelines
Automation team will check with  QA Lead on the test cases and set the priority accordingly and update QA Lead on impact of project

Any frequent changes in user interface
During requirement review automation team and manual testing team will assure that no frequent changes will be occurred.

Start Date
End Date
Phase 1 Test Planning

Candidate Project

Application Understanding

Test Case Selection and Review

Phase 2 Environment Setup

Automation Tool Selection and Setup

Under Test Application Setup

Test Data Preparation

Phase 3 Test Script Design and Development

Stage 4 Test Script Executions
Scripts execution

Bug Reporting

Phase 5: Scripts Maintenance

Report Path