Testing Life Cycle - phases of testing


Unit Testing

Focused verification of individual modules in isolation.  Written by developer. Performed by developer.

Integration Testing

Verification of multiple modules in combination.  Focus on interfaces between modules and interactions among multiple modules.  Written by either developer or test team. Performed by test team.

System Testing

Testing application in context of entire system; hardware, database, web server, etc.
Verify conformity with requirements.  System Tests are the test of the end-user functionality.
System Tests verify the correct functioning of all the required features.  Written by developers (in 206). 
Performed by test team.
When should we write system tests?

Acceptance Testing

Tests run by the customer on the completed system to validate the release.  Usually run in customer's
environment with customer's data.