You are on page 1of 9

.

000
End to End Testing Methodology
QMITEE01 / Version 1.0 Effective: June 15, 2005

Purpose
The purpose of End to End Testing methodology is
- To define how End to End Testing projects are executed and
- To serve as a basis for different phases in an End to End Testing
project.

Scope
During project testing, this methodology shall be used to define the
activities and work products for each phase.

Only the Testing specific activities are detailed in this methodology. For all
other activities like project management, configuration management, etc.
the project shall follow the processes defined as part of Qualify.

Each End to End Testing project which is taken up may go through all the
phases of the Testing Life Cycle. For instance, a project may encompass
only System testing phases based on the customer’s requirements. The
phases that will be followed during the course of the project will have to
be detailed in the Software Project Plan (SPP)-Testing of the project. The
applicable phases of execution, the associated work products, verification
and validation criteria for each of the relevant phases shall be at par with
this methodology.

The End to End Testing methodology offers the flexibility of entry and exit
through any of the defined phases. The user can use this flexibility by
following the Entry, Input, Task, Validation, Output and Exit (EITVOX)
criteria defined for each phase.

Definitions & Acronyms


Definitions

Keyword Definition
Bug Tracking Bug Tracking process covers the defect lifecycle from
identification of a defect to its resolution / closure.
End to End Involvement from the Design Phase to the Production
Testing Phase.
I.e. working in parallel with the development teams to
ensure that quality is assured at each phase. The model
followed is the ‘V’ model. This thus includes the various
levels of testing, namely integration testing, system
testing and acceptance testing.
Functional Process to determine that the features / functionality
Testing of the application / product is as per the requirements
Load Testing Testing the application behavior under varying
acceptable loads
Performance Testing conducted to evaluate the compliance of a
Testing system or component with specified performance
requirements
Regression • Process to ensure that the earlier applications/
Testing products still work with the new changes.
• Tests ensure that changes do not introduce
unintended behavior or additional errors.
Smoke Smoke testing is to ensure that the build version is
Testing ready to undertake for testing

Acronyms

Acronym Explanation
FTS Functional & Technical Specification
ITP Integration Test Plan
ITR Integration Test Report
STP System Test Plan
STR System Test Report

Overview
The End to End Testing process will cover Integration Testing, System
Testing and User Acceptance Testing.

Integration Testing
The Integration Testing process starts with analyzing/ Understanding of
High level Design documents.
The Integration Test plan is created.
Test Cases are prepared based on the system requirements.
Integration testing Environment is identified and setup is done to proceed
with Test Execution.
Tests are executed to ensure that the application meets the requirements.
Defects identified during the Integration Testing are entered in to Defect
tracking process.

System Testing
The System Testing process starts (when Integration Testing is completed
with analyzing/ Understanding of System Design documents.
The System Test plan is created.
Test Cases are prepared based on the system requirements.
System testing Environment is identified and setup is done to proceed with
Test Execution.
Tests are executed to ensure that the application meets the system
requirements.
Defects identified during the System Testing are entered in to Defect
tracking process.
Test result reports are generated after completion of testing.

User Acceptance Testing


The User Acceptance Testing is performed as a part of End to End testing
once System testing is complete. Testing team may need to support to
customer in executing acceptance testing if required.

End to End Testing consists of the following phases:


1. Analyze Integration requirements
2. Create Integration Test Plan
3. Create Integration Test Cases
4. Ensure Integration Testing Environment
5. Execute Integration Test Cases
6. Review Integration Test Results
7. Prepare Integration Test Report
8. Analyze System Requirements
9. Create System Test Plan
10.Create System Test Cases
11.Ensure System testing Environment
12.Execute System Test Cases
13.Review System Test Results
14.Prepare System Test Report
15.User Acceptance Testing

References
• QEdge Testing Methodology
• Functional Testing Methodology
• System Testing Methodology

Tailoring Guidelines
It is recommended that this methodology be followed during the course of
the project. If any tailoring is to be made due to the customer’s
requirements, then the tailoring shall be documented along with
justification in the Project Tailoring Record (PTR). (Ref… Tailoring
Guidelines)
Integration Testing
Analyze Integration Requirements
This phase consists of analyzing requirements from High level Design
Documents and requirement documents, and arriving at the prioritized test
objectives

Entry Requirements Specifications and High Level design


Documents are available
Inputs High Level Design Documents
Tasks • Study and review System Design documents
• Understand and identify functional Interfaces
Verification Integrated Requirements Review
/ Validation
Outputs Integration test Requirements
Exit Clear understanding of Requirements

Create Integration Test Plan


This phase consists of creation of Integration Test Plan. The plan covers
items such as Test Criteria, Scope, Environment, Estimations, Risks, Defect
Tracking and Build Management (Refer… Guidelines for Build and Release
Management, Guidelines for Metrics Definition Standard, Guidelines for
Defect Management)

Entry Understanding of System Design and application


functionality
Inputs Integration Test Requirements
Tasks • Identify and Plan the test data requirement
• Prepare integration test Plan.
• Get integration test plan reviewed with customer
Verification Test plan Review
/ Validation
Outputs Integration test plan
Exit Sign off on integration test plan

Create Integration Test Cases


This phase consist of preparation of Test Cases based on the requirements
and Integration Test Plan. (Refer… Guidelines for Software Testing)

Entry Use cases/application design specifications


Inputs Use cases/application design specifications
Tasks • Create Integration Test Cases
• Create the test data
• Get the integration test Cases reviewed
Verification Test cases Review
/ Validation
Outputs Integration test Cases
Exit Sign off on integration test Cases

Ensure Integration Testing Environment


This phase consist of Environment setup to ensure readiness for Test
Execution. (Refer… Guidelines for Test Data Management)

Entry • Integration test plan


• Understanding of application architecture
Inputs Integration test plan
Tasks • Identify the test lab
• Setup environment for testing
• Setup the required application user access and
other accesses
• Deploy application build
Verification • Test Environment
/ Validation • Access rights
• Test data
Outputs Stable Test Environment
Exit Environment ready

Execute Integration Test Cases


This phase consists of execution of Test Cases, evaluation of testing and
entering the identified defects in to Defect Tracker.

Entry Application ready for testing


Inputs Test Plan, Test Cases and Test Data
Tasks • Conduct smoke test by executing critical
functionalities.
• Execute the major test Cases after Smoke Test
complete
• Identify the defects and enter them in to Defect
Tracking Form
Verification Test Execution Review
/ Validation
Outputs Integration test report
Exit Integration test completed and defects are reported
Review Integration Test Results
This phase consists of review of test results

Entry Test execution complete


Inputs Test results
Tasks Analyze the results
Verification Test results Review
/ Validation
Outputs • Test results report
• Defect Log
Exit Test Results Analysis complete

Prepare Integration Test Report


This phase consists of preparation of Test report. It contains summary
information such as defect data, test evaluation summary.

Entry Test execution and Analysis complete


Inputs Test Results Analysis report
Tasks • Prepare Test report
• Present to the stake holders
Verification Test results review
/ Validation
Outputs • Integration test report
• Defect Summary Report
Exit Sign off on the test report

System Testing
Analyze System Requirements
This phase consists of analyzing requirements from High level Design
Documents and requirement documents, and arriving at the prioritized test
objectives

Entry Requirements Specifications


Inputs SRS/ FRS
Tasks Study and review System requirements
Verification System Requirements Review
/ Validation
Outputs System test Requirements
Exit Clearly understanding of system Requirements

Create System Test Plan


This phase consists of creation of System Test Plan. The plan covers items
such as Test Criteria, Scope, Environment, Estimations, Risks, Defect
Tracking and Build Management.
Entry Understanding of system requirements
Inputs System Test Requirements
Tasks • Prepare system test Plan (Refer… system test plan
template)
• Get system test plan reviewed with customer
Verification Test Plan review
/ Validation
Outputs System test plan
Exit Sign off on system test plan

Create System Test Cases


This phase consist of preparation of Test Cases based on the requirements
and system Test Plan

Entry System Test Plan is ready


Inputs Use cases / System Requirements
Tasks • Prepare System Test Cases
• Identify and prepare the test data required
• Get System Test Cases Reviewed
Verification System test cases review
/ Validation
Outputs System test cases
Exit Sign off on system test cases

Ensure System Testing Environment


This phase consist of Environment setup to ensure readiness for Test
Execution

Entry System Test Cases are ready


Inputs System test cases
Tasks • Identify the test lab
• Setup environment for testing
• Setup the required application user access and
other accesses
• Deploy application build
Verification • Environment
/ Validation • Access rights
• Test data
• Application build
Outputs Stable test environment
Exit Environment ready
Execute System Test Cases
This phase consists of execution of Test Cases, evaluation of testing and
entering the identified defects in to Defect Tracker.

Entry Application ready for testing


Inputs Test Plan, Test Cases and Test Data
Tasks • Execute Smoke Test.
• Execute the test cases as per the test conditions
and test data
• Identify the findings and observations
• Identify the defects and categorize defects based
on severity
• Report defects
Verification Test Execution review
/ Validation
Outputs System test report
Exit System test completed and defects are reports

Review System Test Results


This phase consists of review of test results

Entry Test execution complete


Inputs Test results
Tasks Analyze the results
Verification Test results review
/ Validation
Outputs System test report
Exit Test results Analysis complete

Prepare System Test Report


This phase consists of preparation of Test report. It contains summary
information such as defect data, test evaluation summary.

Entry Test execution complete


Inputs Test results analysis report
Tasks • Prepare a Test Report
• Present to the stake holders
Verification Test Report
/ Validation
Outputs • System test report
• Defect Summary Report
Exit Sign off on the test report
User Acceptance Testing

Entry System Test execution complete


Inputs Acceptance test cases and acceptance test plan
Tasks Support customer in executing acceptance test
Verification Review the results
/ Validation
Outputs Acceptance test report prepared by customer
representative
Exit Acceptance Testing complete