22

Czytam wtyczkę Maven Failsafe został zaprojektowany specjalnie do uruchamiania testów integracji. Obecnie pracuję nad projektem wielomodułowym, a testy integracyjne są w osobnym module, napisanym w TestNg i uruchamianym za pomocą wtyczki surefire. Nie mamy konfliktów z testami jednostkowymi, ponieważ tylko testy integracyjne są przeprowadzane w fazie testów w tym module. Aby skonfigurować środowisko przed testami i wyczyścić je po uruchomieniu testów, stosuje się @BeforeSuite @AfterSuite TestNg Adnotacje. Nie ma więc potrzeby korzystania z fazy testów przed integracją, fazy testów integracji, fazy testów po integracji, wykorzystywanych przez wtyczkę FailSafe.Korzyści z Plugin FailSafe Maven

  • Czy jest więcej korzyści, których mi brakuje, nie używając wtyczki Failsafe?
  • Czy istnieją lepsze sposoby wykonania bieżących wymagań przy użyciu wtyczki Failsafe?
  • Czy mogę uruchomić mój serwer, zamknąć, rozpakować pliki itp. W fazach testu przed integracją, po zakończeniu integracji bez pisania wtyczki?

Odpowiedz

15

Jeśli masz już własne ustawienia testowe/odłogowanie w swoich apartamentach, to z ich wyglądu nie można wiele skorzystać z wtyczki FailSafe.

Wtyczka FailSafe jest przydatna w sytuacjach, w których konfiguracja testowanego systemu jest kosztowna lub zajmuje dużo czasu, na przykład uruchomienie Serwletu lub systemu rozproszonego. Sposób, w jaki wtyczka FailSafe jest przydatna w takich sytuacjach, polega na tym, że możesz skonfigurować to środowisko w fazie pre-integration-test. Ta wtyczka nie zatrzymuje również wykonywania kompilacji Mavena, gdy test się nie powiedzie, co pozwala oczyścić wszystkie twoje artefakty podczas fazy post-integration-test, po czym sprawdza stan twoich testów i przechodzi lub nie komplikuje się odpowiednio podczas faza verify.

19

Failsafe ma jedną dużą funkcję vs Surefire: Kiedy test się nie powiedzie, nie od razu się kończy. Zamiast tego pozwala na uruchomienie kodu czyszczenia (który zazwyczaj powoduje wyłączenie serwera Jetty).