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

Negatywne testy jednostkowe w JUnit

Aruba Cloud - Virtual Private Server VPS
0 głosów
490 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 (280,450 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 979 wizyt
pytanie zadane 29 lutego 2020 w Java przez StressedOut Nowicjusz (210 p.)
+1 głos
1 odpowiedź 932 wizyt
pytanie zadane 16 października 2021 w Java przez p_wika Nowicjusz (190 p.)
0 głosów
5 odpowiedzi 1,584 wizyt
pytanie zadane 2 sierpnia 2018 w Java przez must Bywalec (2,980 p.)

93,335 zapytań

142,330 odpowiedzi

322,416 komentarzy

62,669 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

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...