Migrarea de la JUnit 4 la JUnit 5 inlocuirea regulilor cu extension model. Partea 5

Ultimul articol din seria noastra despre JUnit 4 versus JUnit 5.

Feb 12, 2020 133

Listing 10 JUnit5CustomExtensionTester class

JUnit5CustomExtensionTester class.PNG

In listing 10, facem urmatoarele lucruri:

  1. Extindem JUnit5CustomExtensionTester cu CustomExtension class (1’).
  2. Cream metoda myCustomRuleTest si o adnotam cu @Test (2).

Cand test class este extinsa cu clasa CustomExtension, metodele beforeEach si afterEach definite anterior sunt executate inainte si dupa fiecare metoda de testare.

Rezultatul executarii acestui test apare in imaginea de mai jos. Executarea efectiva a testului este inconjurata de mesaje aditionale.

execution of JUnit5CustomExtensionTester.png

Figure 2 Rezultatul executarii JUnit5CustomExtensionTester.

Remarcam diferenta clara in ceea ce priveste claritatea si lungimea codului intre JUnit 4 si JUnit 5. Abordarea JUnit 4 necesita sa lucram cu 3 clase in timp ce abordarea JUnit 5 necesita doar 2 clase. Codul care trebuie executat inainte si dupa fiecare metoda de testare este izolat in cadrul unei metode dedicate cu un nume clar. Pe aria legata de testing class, trebuie sa o adnotezi doar cu @ExtendWith.


Concluzii


In cadrul acestui articol am vrut sa va aratam migrarea de la JUnit4 rules la JUnit 5 extensions prin diferite exemple. Am migrat codul folosind exceptions rules, temporary rules si custom rules. Am analizat diferentele intre codul original si abordarea JUnit 5 extensions – mai clara si mai scurta. JUnit 4 rules raman in continuare utlizare, deoarece exista un nivel ridicat de teste deja scrise. Insa ideal este sa incepeti sa migrati catre abordarea JUnit 5 extensions.

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!




Luxoft Warsaw - Warsaw Spire, plac Europejski 1, 00-844 Warszawa
Dimitrie Pompeiu nr 5-7 , building C, Et. 5, sect 2, Bucharest, 014459

Contact phone:

021 371 4858
Luxoft Poland Wroclaw - Silver Tower pl. Konstytucji 3-go Maja 3 50-048 Wroclaw
Aleja Generała Tadeusza Bora-Komorowskiego 25, Quattro Business Park Five, 31-476 Kraków, Poland

Contact phone:

+48 122110650
Success
Iti multumim.
Inregistrarea ta a fost trimisa.