Aktywne Wpisy
Fialo +1494
corvvus +12
Muszę się wyżalić tutaj, bo nie mam gdzie.
W lipcu skończyłem 5-letnie studia. Przez cały semestr zwykle było luźno, zajęć niewiele, a jedynym ciężkim okresem gdzie trzeba było się rzeczywiście uczyć i zakuwać to był miesiąc sesji w ciągu każdego semestru. Miałem umowę z rodzicami, że będą mnie utrzymywać na studiach dopóki ich nie skończę, potem mam się usamodzielnić i zarabiać sam na siebie. I tak sobie żyłem przez te 5 lat
W lipcu skończyłem 5-letnie studia. Przez cały semestr zwykle było luźno, zajęć niewiele, a jedynym ciężkim okresem gdzie trzeba było się rzeczywiście uczyć i zakuwać to był miesiąc sesji w ciągu każdego semestru. Miałem umowę z rodzicami, że będą mnie utrzymywać na studiach dopóki ich nie skończę, potem mam się usamodzielnić i zarabiać sam na siebie. I tak sobie żyłem przez te 5 lat
Mam aplikację w arcitekturzepackage per feature. 2 moduły, każdy z nich wystawia jedynie publiczną fasadę i jakieś dto (reszta pakietowa).
Chciałbym teraz taką fasadę przetestować unitowo bez żadnych baz danych itp.
Problem w tym, że moduł nr 1 korzysta z fasady modułu nr 2 (ma ją w swoich zależnościach).
1) Czy w takim razie testując moduł nr 1 powinienem zamockować moduł 2 i potem odwrotnie - testując moduł 2 powinienem zamockować moduł 1?
2) Czy męczyć się ręcznie i w palca tworzyć wszystkie zależności?
Kłóci mi się to ze stwierdzeniem, że unit testy modułów powinny odbywać się w izolacji.
#java #spring #springboot #programowanie #programista15k #testowanieoprogramowania
dlaczego?
Chcesz testować aplikację, a nie jakiś mały jej wycinek.
Jeśli musisz się męczyć, to znaczy, że problem jest gdzieś indziej. Normalnie złożenie modułów nie powinno być problemem.
Olej to stwierdzenie, to już nie
To nie kwestia tego, że teraz byłoby ciężko jakoś bardzo (chociaż już musiałbym kilka klas tworzyć ręcznie itp) tylko ogólnie taktyki którą powinienem obrać.
Tak, by przetestować jeden z nich, mokujesz drugi. Oba na raz z mockiem zewnętrznych zależności.
Integracyjny, przez całą apkę, z h2 ale te testy trwają długo (kilka sekund to długo) więc nie powinno ich być dużo, za to powinny testować możliwe dużo a min, krytyczne funkcjonalności systemu.