CRUD unit test

WC
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 9 lat
  • Postów:5
0

napisałem w C# repozytorium z metodami CRUD (entity framework i dependency injection ), możecie mi polecić jakiś tutorial jak napisać do tego testy jednostkowe? metody delete, create i update zwracają typ void, a może te wymienione metody powinny zwracać boolean? Wtedy bym mógł napisać np:
var data = objectCRUD.delete(company);
Assert.AreEqual(data, true);

przykładowa klasa http://pokazkod.pl/b417b8f33dda0b9b69f0fe8a4aee5a4e3e77253949a12d34ff

0

Testy jednostkowe dla CRUD? Jeśli ich potrzebujesz to pewnie masz coś źle bo nie powinno być w nich logiki do testowania.

UL
+1 - nie testujemy repozytorium/bibliotek, a swój własny kod.
somekind
Moderator
  • Rejestracja:około 17 lat
  • Ostatnio:około 3 godziny
  • Lokalizacja:Wrocław
0

@ulong, prawdziwe repozytoria testujemy, mockując ISession albo jakiś inny kontekst ORMowy. To coś z przykładu nie jest repozytorium, tylko wrapperem na EF, no i testować jednostkowo się też nie da.

@wcfwpf, do takiego kodu możesz napisać jedynie testy integracyjne i sprawdzić, czy dane rzeczywiście zmieniają się w bazie. Ale to niekoniecznie jest warte zachodu.

UL
Niestety, ale nie zgodzę się - POJO, CRUDów, Springowych repository etc. nie testujemy argumentując to zbyt prostą, niezmienną logiką oraz brakiem zależności od reszty kodu. Co innego jeśli nasze DAO posiada zaimplementowaną logikę, jednak wtedy wchodzimy w inny temat - poprawności DAO.
somekind
Nie wiem co to jest "springowe repository". Ja piszę o wzrorcu repozytorium z DDD. Jeśli zachodzi w nim filtrowanie oparte na jakichś warunkach, to prawdopodobnie warto je przetestować.

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.