
What Is System Testing?
System testing is the phase of testing where the entire, fully integrated application is evaluated as a complete system to verify that it meets defined functional and non-functional requirements.
Unlike unit and integration testing, which focus on components and interfaces, system testing validates end-to-end behavior from the user’s perspective in an environment that closely resembles production.
System testing confirms that the fully integrated application meets requirements and is ready for business validation.
| Why It Matters | Who Performs It | When It Occurs |
|---|---|---|
|
|
|
Typical System Testing Techniques
- End-to-End (E2E) Testing
- Verifies complete user workflows across the system.
- Purpose: Ensure workflows function as intended from start to finish.
- Requirement-Based Testing
- Test cases are derived directly from functional and non-functional requirements.
- Purpose: Ensure all documented requirements are met.
- Scenario-Based Testing
- Tests realistic business scenarios rather than isolated features.
- Purpose: Validate the system supports real-world usage patterns.
- Negative Testing
- Validates system behavior when invalid actions or data are used.
- Purpose: Ensure the system fails gracefully and securely.
- Examples:
- Invalid input values
- Unauthorized access attempts
- Missing required data
- Non-Functional Testing
- Performed to validate system characteristics beyond functionality.
- Purpose: Ensure the system is usable, secure, and reliable.
- Includes:
- Performance testing (response times, throughput)
- Security testing (basic vulnerability validation)
- Compatibility testing (browsers, devices)
- Regression Testing
- Re-tests existing functionality after fixes or enhancements.
- Purpose: Ensure new changes do not break existing behavior.
Key Takeaways
- System testing validates the entire system
- It is the last technical validation before UAT
- Focus is on end-to-end workflows and requirements
- Most defects found here impact multiple components
- Strong system testing reduces UAT failures and release risk