Zgodnie z Manifestem testy automatyczne powinny być:
nierozwlekłe - tak proste jak to możliwe, ale nie prostsze
samosprawdzające - testy raportujące swoje własne wyniki; nie potrzebujące ludzkiej interpretacji
powtarzalne - testy uruchamiane wielokrotnie bez ludzkiej interwencji
odporne - testy uzyskujące te same rezultaty teraz i na zawsze; na testy nie wpływają zewnętrzne zmiany
wystarczające - testy weryfikujące wszystkie wymagania testowanego oprogramowania
niezbędne - wszystko w pojedynczym teście wspomaga weryfikację pożądanego zachowania
jasne - każda instrukcja jest łatwa do zrozumienia
wydajne - testy uruchamiane są w akceptowalnym czasie
właściwe - każdy nieudany test wskazuje na niepoprawnie działającą funkcjonalność
niezależne - każdy test może zostać uruchomiony oddzielnie lub w zestawie z dowolnym zbiorem testów i w dowolnej kolejności
utrzymywalne - test powinien być łatwy do zrozumienia, zmodyfikowania i rozszerzenia
śledzalne - do i zwrotnie od kodu, który testuje oraz do i od wymagań.
Samą listę można potraktować jako listę kontrolną do weryfikacji własnych testów automatycznych (spełnia / nie spełnia).
Dokument zawiera również inne zagadnienia dotyczące automatyzacji:
- Ekonomia automatyzacji testów z wykresem pokazującym wysiłek i korzyści z automatyzacji
- Zapachy kodu >>
- Wzorce automatyzacji kodu (czytelność, odporność, ponowne użycie i inne).
Oryginał można znaleźć tutaj: xunitpatterns.com/~gerard/xpau2003-test-automation-manifesto-paper.pdf