Wpis z mikrobloga

  • 1
@teaperr https://pl.m.wikipedia.org/wiki/DRY
Nie powinno być tak, że każdy test zaczyna się od 4 takich samych linijek. Metoda, a może nawet zrobić jakiś SetUp (coś co samo wykona się przed każdym testem) i trzymać w polach (ale niektórzy twierdzą, że to zła praktyka). Poza tym nie powinieneś praktycznie nigdy rzucać Exception - powinieneś stworzyć własną klasę. Po pierwsze dlatego, że jak będziesz łapać wyjątek to Exception złapie wszystko - nawet to czego
  • Odpowiedz
  • 0
@teaperr ja bym miał tutaj 3 wyjątki: nieprawidłowe hasło, nieprawidłowy email, nieprawidłowy login. Zapewne jak będziesz gdzieś łapać ten wyjątek to inaczej będziesz reagował na każdy z tych błędów. A nawet jeśli nie to w przyszłości na pewno się przyda wiedzieć dokładnie dlaczego rejestracja się nie powiodła.
  • Odpowiedz
@Yahoo_: @teaperr: A ja się nie zgodzę do końca. W testach DRY nie obowiązuje.
Tzn. akurat w tym przypadku można by stworzyć oddzielną metodę, bo te mocki nic nie robią.

Ale generalnie uważam, że w testach lepiej się powtórzyć i wypisać wszystkie dane na początku, żeby wiedzieć, jaki dokładnie przypadek sprawdzasz.
  • Odpowiedz
  • 0
@Maav i tak, i nie. Zgadzam się, że przesadzanie z tworzeniem metod w testach jest złe (bo testy maja to do siebie, że są bardzo podobne, ale jednak trochę inne i potem taka metoda okazuje się bezużyteczna w wielu przypadkach), ale z drugiej strony nie chcesz 37 razy kopiować tego samego. Jeszcze kopiowanie to pół biedy, bieda się zaczyna jak robisz refactor i Ci się sygnatura zmienia i teraz musisz wszędzie
  • Odpowiedz