Lista kontrolna to w dużym uproszczeniu lista rzeczy do zapamiętania wraz z możliwością odhaczenia, czy pewna rzecz się wydarzyła, czy też nie. W procesie testowania list kontrolnych możemy zdefiniować dziesiątki. Mogą one dotyczyć zarówno działań testowych, jak i weryfikacji funkcji i cech oprogramowania.
Checklista to również forma notacji samych testów, gdzie w uproszczonej strukturze określamy to, co powinno podlegać weryfikacji. Poniżej uzupełniony element listy kontrolnej w wersji z punktem kontrolnym jako pytaniem do poprawności działania funkcji.
Punkt listy kontrolnej | Opcje | Odpowiedź dla wersji... |
... | ... | .. |
Czy użytkownik może założyć konto w systemie? | Tak / Nie / Nie dotyczy | TAK |
... | ... | ... |
Jak widzimy, oprócz standardowych odpowiedzi TAK / NIE, wśród opcji pojawia się również możliwość wybrania odpowiedzi "nie dotyczy". Stosuje się ją, gdy lista kontrolna jest uniwersalna i stosowana w różnych projektach. W związku z tym nie wszystkie jej punkty muszą zostać spełnione.
Podobna w notacji lista może powstać również dla prowadzenia samych testów. Przykładowa lista kontrolna do testów akceptacyjnych:
- aplikacja testowa dostępna - TAK / NIE
- testerzy akceptacyjni z przypisanymi zadaniami dostępni - TAK / NIE
- loginy i hasła do systemu dostępne - TAK / NIE
- scenariusze testów akceptacyjnych dostępne - TAK / NIE
- środowisko testowe dostępne - TAK / NIE
- plan testów akceptacyjnych dostępny - TAK / NIE
- system raportowania defektów dostępny - TAK / NIE
W teorii dopiero pozytywna odpowiedź na wszystkie pytania potwierdza naszą gotowość do uruchomienia testów akceptacyjnych. Czy ta lista jest kompletna? Prawdopodobnie w niektórych sytuacjach TAK, ale w innych trzeba ją uzupełnić o dodatkowe pytania. Mogą to być zagadnienia domenowe lub typowe dla określonych testów / systemów.
Reasumując: lista kontrolna to dobra forma zapamiętywania, aby pewne rzeczy w projekcie się wydarzyły. Warto ją stosować jako uproszczenie dla bardziej formalnych metod prowadzenia projektów oraz jako pewną formalizację dla tych prowadzonych mało formalnie.