Testowanie asercji
Co to jest testowanie oparte na asercji?
Twierdzenie to wyrażenie boolowskie w określonym punkcie programu, które będzie prawdziwe, chyba że w programie jest błąd. Asercja testowa jest definiowana jako wyrażenie, które zawiera pewną możliwą do przetestowania logikę określoną dla testowanego celu.
Korzyści z twierdzeń:
Główną zaletą posiadania asercji jest identyfikacja defektów w programie. Przydatność twierdzeń obejmuje:
Służy do wykrywania subtelnych błędów, które mogą pozostać niezauważone.
Służy do wykrywania błędów wcześniej po ich wystąpieniu.
Stwórz oświadczenie o skutkach działania kodu, które na pewno jest prawdziwe.
Ograniczenia asercji
Jak każdy inny fragment kodu, asercje mogą same zawierać błędy. Może to prowadzić do następujących problemów:
Niezgłoszenie istniejącego błędu.
Zgłaszanie błędu, gdy nie istnieje.
Może prowadzić do innych skutków ubocznych
Może zająć trochę czasu, jeśli zawiera błędy i zajmuje również pamięć.
Jak asercje mogą blokować testowanie?
Jeśli twierdzenie zawodzi z jednego lub drugiego powodu, konsekwencje tego samego mogą być poważne. Asercja może stać się przeszkodą, co może skutkować przerwaniem testów na cały dzień. Niektóre warunki, dla których chcemy przetestować, mogą być koncepcyjnie proste, ale bardzo trudno jest to sprawdzić w praktyce.