Test levels are groups of test activities that are organized and managed together. Each test level is an instance of the test process, consisting of the activities performed in relation to the software at a given level of development.
Types of Test Levels
ISTQB Fundamental syllabus describes Four Test Levels:
- Component Testing
- Integration Testing
- System Testing
- Acceptance Testing
Test levels Attributes
The following attributes characterize each test level.
- Specific Objective
- Test Basis
- Test Objects
- Defects and Failures
- Specific approaches and responsibilities
Key points about Test Levels
Let's understand some key points about Test Levels:
- Linked with SDLC: Test levels are related to activities within the software development lifecycle. Generally, Test levels are associated with each corresponding development phase, supporting early testing.
- Find Early Defects: Defects found at lower test levels prevent defects from escaping to higher levels.
- Context-Dependent: Depending on the project context, combining or reorganizing test levels may be necessary. For most types of projects, it is usually best to have multiple test levels, with some of these levels handled by independent testers.
- Test Types: Functional, non-functional, Confirmation, and regression testing are performed at all test levels.
- Role of Tester: Different people may take over the tester's role at different test levels. For example, developers do component and integration testing. At the acceptance test level, the role of a tester is often done by the business team.
- Test Environment: A suitable test environment is required for every test level—for example, the Developer user development environment for Unit or module or Component Testing. Acceptance Testing is done in Production like a UAT environment.