testovat během celého životního cyklu projektu,
vyvíjet testy ještě před samotným kódem,
(kontinuálně) testovat všechny artefakty programu,
testováním odhalovat příčiny chyb a nepřekrývat je,
při testování používat přitom jednoduché a efektivní nástroje a
testování zahrnout po všech stránkách do vývoje