Testy jednostkowe, equals, warstwy

Testy jednostkowe, equals, warstwy
KA
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Warszawa
  • Postów: 1683
0

Hej. Mam dwa pytania:

  1. Czy w klasach-encjach nadpisywać metody equals() i hashCode() ? (czytałam że nie jest to dobre)

  2. Jeżeli nie nadpisywać to przy testach DAO rozumiem, że mogę się pożegnać z czymś typu np.

Kopiuj
assertThat(book.getAuthors(),contains(author));

i najwyżej muszę albo pisać jakieś własne funkcje-equalsy pomocnicze / assertować po polach podstawowych (String, Integer itd...) ... jakby nie było w obu przypadkach muszę po kolei wtedy powyciągać je getterami.

  1. to tak na marginesie - gdy mam już powiedzmy jakiś biznes i logikę mam problem z zbudowaniem kolejnej warstwy tj. serwisów. jeżeli ktoś ma jakiś fajny projekt / dobre wyjaśnienie pod tym względem to proszę o link / cokolwiek. Głównie chodzi mi o to jaka wartość dodana powinna zawierać się w serwisie w stosunku do biznesu i pod jakim kątem głównie budować serwisy. (chce sobie wyrobić jasną granicę biznes - serwis ,bo ciągle odnoszę wrażenie, że to mieszam i mam problem z wyczuciem tego).
Koziołek
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Stacktrace
  • Postów: 6822
1
  1. możesz nadpisać o ile nie będziesz tam używać sztucznego identyfikatora (jeżeli masz naturalne id np. email, to można go użyć).
  2. nie pisać unitów DAO, pisać testy integracujne jak już koniecznie potrzebujesz coś sprawdzić.
  3. poszukaj prezentacji i artykułów o clean architecture.
Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0
  1. A co w tym DAO testujesz? Testujesz czy JPA/Hibernate dobrze wyciąga encje? To zostaw testom jednostkowym danego frameworka. Ty masz testować SWÓJ kod.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.