Testiranje programske opreme ima več ravni (po obsegu) in vrst (po namenu). Razumevanje njih — enot, integracije, od konca do konca; funkcionalno vs ne-funkcionalno — pomaga zgraditi celovit pristop k testiranju, ki pokriva različne vidike kakovosti.
Ravni testiranja (po obsegu)
UNIT → individual functions/methods in isolation (smallest, fastest, most numerous)
INTEGRATION → multiple units/components working TOGETHER (e.g. code + database, services)
END-TO-END (E2E) → the WHOLE application from the user's perspective (full flows,
through the real UI/system) — broadest, slowest
SYSTEM → the complete integrated system; ACCEPTANCE → meets business requirements
