Streszczenie: W tym artykule omówimy nową architekturę Junit 5, niedociągnięcia poprzedniej wersji JUnit 4 oraz sposób, w jaki podejście modułowe zmieniło stan rzeczy i jakie korzyści przyniosło. Pokażemy też, jak przeprowadzić migrację kodu JUnit 4 do JUnit 5, wykorzystując nowe funkcje.

1.Modułowość JUnit 5

JUnit 5 znaczy, że nadszedł czas na nowe podejście. Nie przyszło to jednak natychmiast; wymagało refleksji, a niedociągnięcia JUnit 4 stały się dobrym wkładem do potrzebnych ulepszeń. Architekci znają te problemy i zdecydowali się pójść drogą redukcji rozmiarów i modułowości.

Aby umożliwić ewolucję struktury JUnit, konieczne było nowe podejście, modułowe. Jego architektura musiała umożliwiać JUnit interakcję z różnymi zautomatyzowanymi klientami za pomocą różnych narzędzi i IDE. Logika w kontekście obaw wymagała:

  • API do pisania testów, dedykowane głównie dla programistów.

W konsekwencji powstała architektura JUnit 5 zawiera trzy moduły (Rys.1):

  • JUnit Platform, które służy jako podstawa do uruchamiania frameworków testowych na JVM (Java Virtual Machine), dostarcza również API do uruchamiania testów z konsoli, IDE lub narzędzi do budowania.

Rysunek 1 Modułowa architektura JUnit 5

2. JUnit 5 Platform

Idąc dalej z ideą modułowości, przyjrzymy się pokrótce artefaktom zawartym w platformie JUnit 5 (Rys. 2):

  • junit-platform-commons, wewnętrzna wspólna biblioteka JUnit, przeznaczona wyłącznie do użytku z samym frameworkiem JUnit. Jakiekolwiek użycie przez external parties nie jest obsługiwane.

Interesujesz się Javą? Sprawdź nasze szkolenia

Catalin Tudose
Java and Web Technologies Expert

Originally published at https://www.luxoft-training.pl.