'Y'

Testarea aplicatiilor cu JUnit5 si JMock

Sunt foarte multe proiecte bune care au fost dezvoltate pentru a ne ajuta sa facilitam folosirea de mock objects in proiectele noastre Java. In aceasta serie de articole analizam trei dintre cele mai folosite frameworks: EasyMock, JMock si Mockito. Continuam discutia noastra cu JMock de aceasta data.

Nov 11, 2020 153

1. Cum folosim JMock


Pana acum am vazut cum sa implementam propriile noastre mock-objects si cum sa folosim framework-ul EasyMock. Acum vom discuta despre framework-ul Jmock (http://jmock.org/), pentru a vedea o alta optiune de mocking. Vom urma acelasi scenariu ca in articolul anterior: testarea unui transfer de fonduri cu ajutorul unui mock AccountManager, dar folosind JMock de aceasta data.

Pentru a lucra cu JMock, trebuie sa adaugam fisierul pom.xml la dependencies din listing 1:

Listing 1 JMock Maven dependencies 1.JPG


Listing 2 prezinta un simplu Account object cu doua proprietati: un account ID si un sold.

The Account class 2.JPG


Listing 3 prezinta interfata AccountManager care coordoneaza ciclul de viata si persistenta Account objects (limitat la gasirea de conturi dupa ID si actualizarea lor):

AccountManager interface 3.JPG


Listing 4 arata metoda de transfer prin care banii sunt transferati intre doua conturi. Foloseste interfata AccountManager definita anterior pentru a gasi conturile de debit si credit dupa ID si pentru a le actualiza.

AccountService class 4.JPG


Vrem sa putem face un unit test pe comportamentul AccountService.transfer. Pentru asta, pana cand implementarea interfetei AccountManager este gata, vom folosi o mock implementation a interfetei AccountManager deoarece metoda de transfer foloseste interfata si trebuie sa o testam izolat.

Vrei sa inveti mai multe despre aceasta tehnologie? Descopera cursurile noastre.

Catalin Tudose
Java and Web Technologies Expert

Daca iti place acest articol, distribuie-l si prietenilor tai!




Mai ai intrebari?
Contacteaza-ne.
Thank you.
Your request has been received.