Development testing: de componenten van het systeem worden onafhankelijk van elkaar getest
System testing: het systeem wordt als geheel getest, enerzijds om de samenwerking tussen de verschillende componenten te testen en anderzijds om de functionele en niet-functionele eisen te testen
Acceptance testing: het systeem wordt getest met data van de klant