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

Negatywne testy jednostkowe w JUnit

0 głosów
647 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 (283,300 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,040 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 1,401 wizyt
pytanie zadane 29 lutego 2020 w Java przez StressedOut Nowicjusz (210 p.)
+1 głos
1 odpowiedź 1,108 wizyt
pytanie zadane 16 października 2021 w Java przez p_wika Nowicjusz (190 p.)
0 głosów
5 odpowiedzi 2,353 wizyt
pytanie zadane 2 sierpnia 2018 w Java przez must Bywalec (2,980 p.)

93,731 zapytań

142,668 odpowiedzi

323,286 komentarzy

63,289 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

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...