• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Negatywne testy jednostkowe w JUnit

VPS Starter Arubacloud
0 głosów
407 wizyt
pytanie zadane 4 maja 2021 w Java przez janyczek Początkujący (360 p.)
edycja 4 maja 2021 przez janyczek
Na czym polega negatywne testowanie?

Opcja 1: dla danych, które podaje wymyślam jakąś nieprawdziwą wartość oczekiwaną (chociaż wiem, że taka nie będzie) tylko po to żeby test nie przeszedł?

Opcja 2: Podaje jakieś wartości niezgodne z działaniem metody (np. metoda działa tylko dla liczb naturalnych, a ja podaje liczbę ujemną)? tylko jaką wpisać wartość oczekiwaną w tym momencie?

 

EDIT: Sam wymyśliłem te opcje bo nie mam pojęcia co oznacza negatywny test jednostkowy. Dlatego chciałbym aby ktoś wskazał gdzie się mylę.

1 odpowiedź

0 głosów
odpowiedź 4 maja 2021 przez Wiciorny Ekspert (275,470 p.)
wybrane 4 maja 2021 przez janyczek
 
Najlepsza
Dane: na wstępie mamy błędne dane

Dla błędnych danych : powinien być zwrócony odpowiednia odpowiedź
Dodatkowo jeśli mamy walidacje to czy odpowiednia walidacja została błędnie zwrócona.
Opcja 2: Jesli ma obliczac naturalne, a podajesz ujemną - > to powinieneś zwrócić błąd od logiki twojej aplikacji jesli w metodzie sprawdzasz i np. wysylasz informacje " liczba jest ujemna" błąd, to tego spodziewasz się na teście
komentarz 4 maja 2021 przez janyczek Początkujący (360 p.)
W takim razie negatywny test jednostkowy to taki, który przechodzi (poprawnie, na zielono)? Wyróżnia go to, że jest zaimplementowany dla niepożądanego działania metody (wynik takiego działania powinienem przewidzieć w metodzie, dlatego wiem czego się spodziewać)?
1
komentarz 4 maja 2021 przez tkz Nałogowiec (42,020 p.)

Po prostu masz przypadki pozytywne i negatywne. Nie używa się "negatywny test jednostkowy", na pewno nie w tym kontekście. 
Przykład z liczbami naturalnymi jest dobry. Negative case - gdzie jakaś część/wszystko idzie nie tak jak chcemy i positive case -  gdzie wszystko płynie z flow programu.

W takim razie negatywny test jednostkowy to taki, który przechodzi (poprawnie, na zielono)?

Tak, inne testy nie za bardzo mają sens. 

Wyróżnia go to, że jest zaimplementowany dla niepożądanego działania metody (wynik takiego działania powinienem przewidzieć w metodzie, dlatego wiem czego się spodziewać)?

Czy ja wiem, czy wyróżnia. Po prostu dostaje inne dane wejściowe. W założeniu błędne i sprawdzasz w teście, czy sobie poradzi, czy przygotowałeś się na wszystkie niespodzianki. 

Podobne pytania

0 głosów
2 odpowiedzi 641 wizyt
pytanie zadane 29 lutego 2020 w Java przez StressedOut Nowicjusz (210 p.)
+1 głos
1 odpowiedź 788 wizyt
pytanie zadane 16 października 2021 w Java przez p_wika Nowicjusz (190 p.)
0 głosów
5 odpowiedzi 1,144 wizyt
pytanie zadane 2 sierpnia 2018 w Java przez must Bywalec (2,980 p.)

92,829 zapytań

141,771 odpowiedzi

320,814 komentarzy

62,158 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...