Testowanie aplikacji za pomocą JUnit5 i JMock. Część 1
Napisano już wiele dobrych projektów, które pomogą nam ułatwić korzystanie z atrapy obiektów w naszych projektach Java. W tej serii artykułów przyjrzymy się bliżej trzem najczęściej używanym makietom frameworków: EasyMock, JMock i Mockito. Kontynuujemy serię z Jmockiem.
1. Korzystanie z JMock
Do tej pory widzieliśmy, jak zaimplementować własne makiety obiektów i jak używać frameworka EasyMock. W tej sekcji przedstawiamy strukturę JMock (http://jmock.org/), aby uzyskać pełny obraz różnych technik mockowania. Będziemy postępować zgodnie z tym samym scenariuszem: testowanie przelewu za pomocą pozorowanego menedżera konta, tym razem przy użyciu JMocka.
Aby pracować z JMockiem, musimy dodać do pliku pom.xml zależności z listingu 1:
Listing 2 przedstawia bardzo prosty obiekt Konto z dwiema właściwościami: ID konta i saldem.
Listing 3 przedstawia interfejs AccountManager, który zarządza cyklem życia i trwałością obiektów kont (ograniczone do wyszukiwania kont według identyfikatora i aktualizowania kont):
Listing 4 przedstawia metodę przelewu przeznaczoną do przesyłania pieniędzy między dwoma rachunkami. Używa wcześniej zdefiniowanego interfejsu AccountManager do wyszukiwania rachunków debetowych i kredytowych według identyfikatora i do ich aktualizacji.
Chcemy mieć możliwość testowania jednostkowego zachowania AccountService.transfer. W tym celu, dopóki implementacja interfejsu AccountManager nie będzie gotowa, będziemy posługiwać się próbną implementacją interfejsu AccountManager, ponieważ metoda przelewu korzysta z tego interfejsu i musimy to przetestować w izolacji.
Zainteresowany JUnit? Sprawdź nasze szkolenia.
Catalin Tudose
Java and Web Technologies Expert
Originally published at https://www.luxoft-training.pl.