MuleSoft - Testowanie za pomocą MUnit
Rozumiemy, że testowanie jednostkowe to metoda, za pomocą której można przetestować poszczególne jednostki kodu źródłowego w celu określenia, czy nadają się do użycia, czy nie. Programiści Java mogą używać platformy Junit do pisania przypadków testowych. Podobnie MuleSoft ma również strukturę o nazwie MUnit, która pozwala nam pisać zautomatyzowane przypadki testowe dla naszych interfejsów API i integracji. Jest to idealne rozwiązanie dla środowiska ciągłej integracji / wdrażania. Jedną z największych zalet frameworka MUnit jest to, że możemy go zintegrować z Maven i Surefire.
Funkcje MUnit
Oto niektóre z bardzo przydatnych funkcji platformy testowej Mule MUnit -
W frameworku MUnit możemy stworzyć nasz test Mule, używając kodu Mule, a także kodu Java.
W Anypoint Studio możemy projektować i testować nasze aplikacje i interfejsy API Mule, graficznie lub w formacie XML.
MUnit pozwala nam łatwo zintegrować testy z istniejącym procesem CI / CD.
Zapewnia generowane automatycznie testy i raporty pokrycia; stąd praca ręczna jest minimalna.
Możemy również użyć lokalnych serwerów DB / FTP / poczty, aby testowanie było bardziej przenośne w procesie CI.
Pozwala nam włączać lub wyłączać testy.
Możemy również rozszerzyć framework MUnit o wtyczki.
Umożliwia nam weryfikację wywołań procesora wiadomości.
Za pomocą platformy testowej MUnit możemy wyłączyć łączniki punktów końcowych, a także przepływ przychodzących punktów końcowych.
Możemy sprawdzić raporty o błędach za pomocą śledzenia stosu Mule.
Najnowsza wersja platformy testowej Mule MUnit
MUnit 2.1.4 to najnowsza wersja platformy testowej Mule MUnit. Wymaga następujących wymagań sprzętowych i programowych -
- MS Windows 8+
- Apple Mac OS X 10.10+
- Linux
- Java 8
- Maven 3.3.3, 3.3.9, 3.5.4, 3.6.0
Jest kompatybilny z Mule 4.1.4 i Anypoint Studio 7.3.0.
MUnit i Anypoint Studio
Jak już wspomniano, MUnit jest w pełni zintegrowany ze studiem Anypoint i możemy projektować i testować nasze aplikacje i API Mule graficznie lub w formacie XML w ramach Anypoint Studio. Innymi słowy, możemy użyć interfejsu graficznego Anypoint Studio, aby wykonać następujące czynności -
- Do tworzenia i projektowania testów MUnit
- Do przeprowadzania naszych testów
- Do przeglądania wyników testów oraz raportu pokrycia
- Do debugowania testów
Zacznijmy więc kolejno omawiać każde zadanie.
Tworzenie i projektowanie testów MUnit
Po uruchomieniu nowego projektu automatycznie doda nowy folder, a mianowicie src/test/munitdo naszego projektu. Na przykład rozpoczęliśmy nowy projekt Mule, a mianowicietest_munit, widać na poniższym obrazku, dodaje wyżej wymieniony folder pod naszym projektem.
Teraz, po rozpoczęciu nowego projektu, istnieją dwa podstawowe sposoby tworzenia nowego testu MUnit w Anypoint Studio -
By Right-Clicking the Flow - W tej metodzie musimy kliknąć prawym przyciskiem myszy określony przepływ i wybrać MUnit z menu rozwijanego.
By Using the Wizard- W tej metodzie do stworzenia testu musimy skorzystać z kreatora. Pozwala nam stworzyć test dla dowolnego przepływu w obszarze roboczym.
Zamierzamy użyć metody „Kliknij przepływ prawym przyciskiem myszy”, aby utworzyć test dla określonego przepływu.
Najpierw musimy utworzyć przepływ w obszarze roboczym w następujący sposób -
Teraz kliknij prawym przyciskiem myszy ten przepływ i wybierz MUnit, aby utworzyć test dla tego przepływu, jak pokazano poniżej -
Spowoduje to utworzenie nowego zestawu testów, którego nazwa pochodzi od pliku XML, w którym znajduje się przepływ. W tym przypadku,test_munit-test-suite to nazwa nowego zestawu testów, jak pokazano poniżej -
Poniżej znajduje się edytor XML dla powyższego przepływu komunikatów -
Teraz możemy dodać plik MUnit procesor wiadomości do zestawu testów, przeciągając go z palety Mule.
Jeśli chcesz utworzyć test za pomocą kreatora, wykonaj następujące czynności File → New → MUnit i doprowadzi Cię do następującego zestawu testowego MUnit -
Konfiguracja testu
W Mule 4 mamy dwie nowe sekcje, a mianowicie MUnit i MUnit Tools, łącznie mając cały procesor komunikatów MUnit. Możesz przeciągnąć dowolny procesor komunikatów do obszaru testowego MUnit. Jest to pokazane na poniższym zrzucie ekranu -
Teraz, jeśli chcesz edytować konfigurację swojego skafandra lub testować w Anypoint Studio, musisz wykonać poniższe kroki -
Step 1
Przejdź do Package Explorer i kliknij prawym przyciskiem myszy .xml filedla swojego pakietu lub testu. Następnie wybierz plikProperties.
Step 2
Teraz w oknie Właściwości musimy kliknąć Run/Debug Settings. Po tym kliknijNew.
Step 3
W ostatnim kroku kliknij MUnit pod Select Configuration Type okno, a następnie kliknij OK.
Uruchamianie testu
Możemy uruchomić zestaw testów, a także test. Najpierw zobaczymy, jak uruchomić zestaw testów.
Uruchamianie zestawu testów
Aby uruchomić zestaw testów, kliknij prawym przyciskiem myszy pustą część Mule Canvas, w której znajduje się zestaw testów. Otworzy się menu rozwijane. Teraz kliknijRun MUnit suite jak pokazano poniżej -
Później możemy zobaczyć wynik w konsoli.
Przeprowadzanie testu
Aby uruchomić konkretny test, musimy wybrać konkretny test i kliknąć go prawym przyciskiem myszy. Otrzymamy to samo menu rozwijane, które otrzymaliśmy podczas uruchamiania zestawu testów. Teraz kliknijRun MUnit Test opcja, jak pokazano poniżej -
Tam po wyjściu można zobaczyć w konsoli.
Przeglądanie i analizowanie wyników testu
Anypoint Studio wyświetla wynik testu MUnit w pliku MUnit tabpanelu eksploratora po lewej stronie. Udane testy można znaleźć w kolorze zielonym, a testy zakończone niepowodzeniem w kolorze czerwonym, jak pokazano poniżej -
Możemy przeanalizować wynik naszego testu, przeglądając raport pokrycia. Główną funkcją raportu pokrycia jest dostarczanie miary określającej, jaka część aplikacji Mule została pomyślnie wykonana przez zestaw testów MUnit. Pokrycie MUnit jest zasadniczo oparte na liczbie wykonanych procesorów komunikatów MUnit. Raport pokrycia MUnit zawiera dane dotyczące następujących elementów -
- Ogólny zasięg aplikacji
- Pokrycie zasobów
- Pokrycie przepływu
Aby uzyskać raport pokrycia, musimy kliknąć `` Generuj raport '' na karcie MUnit, jak pokazano poniżej -
Debugowanie testu
Możemy debugować zestaw testów, a także test. Najpierw zobaczymy, jak debugować zestaw testów.
Debugowanie zestawu testów
Aby debugować zestaw testów, kliknij prawym przyciskiem myszy pustą część płótna Mule, w której znajduje się zestaw testów. Otworzy się menu rozwijane. Teraz kliknijDebug MUnit Suite jak pokazano na poniższym obrazku -
Następnie możemy zobaczyć wynik w konsoli.
Debugowanie testu
Aby debugować określony test, musimy wybrać konkretny test i kliknąć go prawym przyciskiem myszy. Otrzymamy to samo menu rozwijane, które otrzymaliśmy podczas debugowania zestawu testów. Teraz kliknijDebug MUnit Testopcja. Jest to pokazane na poniższym zrzucie ekranu.