Io-10-wyk-Slajd20
Ograniczenia testowania – c.d.(1)
Istnieją dwa podejścia na określenie czy system jest wolny od błędów. Można na zasadzie dowodu poprawności udowodnić, że system jest bezbłędny lub też przetestować system wyczerpująco, czyli sprawdzić wszystkie możliwe jego zachowania. Jeśli dla wszystkich możliwych kombinacji stanów i wejść system zachowuje się prawidłowo to znaczy, że jest bezbłędny. Niestety zarówno dowodzenie poprawności jak i wyczerpujące testowanie są możliwe tylko dla małych systemów. Jako przykład niech posłuży przedstawiony fragment kodu. Jak widać liczba przypadków testowych rośnie wykładniczo wraz ze wzrostem liczby wykonań pętli. Dla jednego jej przebiegu potrzebne są trzy przypadki testowe. Dla dwóch przejść potrzebnych jest aż 5 wariantów testu, dla dziesięciu już tysiąc dwadzieścia pięć, a dla sześćdziesięciu nawet nie podejmę się odczytania tej liczby. W każdym razie jest ona bardzo duża.