Test Stages


General

A testing stage is a group of testing activities, which is executed based on the phases of the software development process. The responsibility of each testing stage may vary and must be alligned in each project with the customer. However the final acceptance test must be executed by the customer (which must also take responsiblility).

The following testing stages have been defined within ISTQB; as addition the developertests and component tests have been separated as in most projects they are executed separately (best practice).

Test Allocation Matrix

 Component TestIntegration TestSystem TestUser Acceptance Test
What?Components ModulesInternal Interfaces Building Blocks(Sub-) SystemSystem Documentation User Manual Contract (Software Development)
  Why?Functionality Adequacy Integrity Correctness Secureness Efficiency MaintainabilityFunctionality InteroperatibilityFunctionality
whole stack Portability Reliability Efficiency Useability
Functionality *
whole stack Portability Reliability Efficiency * Useability * * Focus areas
How?Whitebox (Static Methods)WhiteboxBlackbox Equivalence class Use-Cases Limit ValuesBlackbox Business Processes Use-Cases
Who?DeveloperFunctional Tester
Supported by Developer
Functional Tester Key User (Business department) Test Specialist (Non-Functional Tester)Key User
Supported by Tester
Where?Development EnvironmentSeveral Environments Development Environment Test Environment Integration EnvironmentProduction-Sync EnvironmentCustomer Environment Production-Sync Environment

1. Developer Tests

AimVerified source code.
Typical TestobjectivesProgram-modules / units like classes, methods and other software artifacts.
Executed byProgrammer, who wrote the code.
ResponsibleManager of the developer (Technic. Lead). In rare cases the Test Manager.
Kind of testsFunctional tests, in must cases implemented as Unit Tests, which are deisgned based on the programmed code.

2. Component Test

AimComponents are – isolated and without huge organizational efforts – tested. Most issues are resolved early (before the start of higher test stages).
Typical TestobjectivesSmallest single or aggregated program modules, which have functional correlations and are testable.
Executed byTeam of testers, which must not be the developers.
ResponsibleTest Manager.
Kind of testsFunctional tests like UI behaviour, validation scripts. Robustness and negative-tests are also included.

3. Integrated Component Test

AimThe correlation of single modules (which are tested separately) are tested.
Typical TestobjectivesAggregated components. This stage focuses on the integration between components.
Executed byTeam of testers.
ResponsibleTest Manager.
Kind of testsFunctional integration tests.

4. System Test

AimThe integrated system is tested (End-to-End).
Typical TestobjectivesThe integrated system is tested.
Executed byTeam of testers.
ResponsibleTest Manager.
Kind of testsFunctional tests (e.g. based on business processes) Non-Functional tests (Load and Performance Tests, Fail-Over tests) Regression tests

5. User Acceptance Test (UAT)

AimAcceptance-Criteria of the customers are met.
Typical TestobjectivesThe integrated system is tested.
Executed byTeam of testers (customer) and key users.
ResponsibleCustomer
Kind of testsFunctional tests (e.g. based on business processes) Non-Functional tests (Useability)