to Be Efficient with TestNG Eclipse Plugin

TestNG to potężny framework testowy, który umożliwia programistom pisanie elastycznych testów z grupowaniem, sekwencjonowaniem i funkcjami bazującymi na danych; ułatwia nawet pisanie równoległych testów. A najpotężniejszą, moim zdaniem, funkcją jest zestaw słuchaczy, który zaczepia się w TestNG, co pozwala lepiej kontrolować przypadki testowe, lub zwiększyć raportowanie itp.

Wtyczka TestNG Eclipse daje możliwość uruchamiania i debugowania przypadków TestNG w Eclipse IDE.

ten artykuł dzieli się kilkoma wskazówkami na temat tego, jak być skutecznym podczas tworzenia i uruchamiania testów za pomocą wtyczki TestNG Eclipse.

instalacja

Wtyczka TestNG for Eclipse jest dostępna na Eclipse Marketplace, postępuj zgodnie z instrukcją instalacji.

użyj wtyczki TestNG Eclipse

testy autorskie

gdy tworzysz przypadki TestNG, predefiniowane szablony mogą zdecydowanie pomóc ci być bardziej wydajne. Aby utworzyć metodę testową, w edytorze wpisz test, a następnie naciśnij klawisz skrótu Content Assist (’Alt+/’ w moim przypadku), wybierz szablon jak poniżej:

uwaga: będzie więcej szablonów dostępnych w wtyczce TestNG Eclipse 6.10.1, np. 'setup’, 'teardown’ itp.

uruchamianie / debugowanie testów

Uruchamianie testów

istnieje kilka sposobów uruchamiania testów, co jest bardzo przydatne. Oto różne sposoby:

  • kliknięcie prawym przyciskiem myszy na klasie testowej lub edytorze źródłowym, aby uruchomić ten test.
  • kliknięcie prawym przyciskiem myszy na pakiecie, aby uruchomić wszystkie testy pod pakietem.
  • kliknij prawym przyciskiem myszy plik TestNG suite XML, aby uruchomić niestandardowy pakiet testowy.
  • lub, przejdź do uruchom konfigurację dla lepszej kontroli konfiguracji uruchamiania, na przykład, grupa testowa do uruchomienia; przekazać właściwości systemu do procesu testowego runtime, itd.

ponownie uruchom nieudane testy

jeśli masz wiele nieudanych testów, po poprawieniu kodu testowego możesz ponownie uruchomić wszystkie nieudane testy, aby zaoszczędzić czas:

Integracja Mavena

jeśli twój projekt jest zarządzany przez Mavena, możesz skonfigurować maven-surefire-plugin lub maven-failsafe-plugin, aby uruchomić przypadek testowy. Załóżmy, że przekazujesz następujące argumenty JVM i właściwości systemu do procesu testowego runtime:

<artifactId>maven-surefire-plugin</artifactId><configuration> <suiteXmlFiles> <suiteXmlFile>test-suite/testng.xml</suiteXmlFile> </suiteXmlFiles> <argLine>-javaagent:${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar -Xmx1024m -XX:MaxPermSize=512m -Xms256m -Xmx1024m -XX:PermSize=128m -Dversion=${project.version} </argLine> <systemPropertyVariables> <foo>${foo.value}</foo> </systemPropertyVariables> <environmentVariables> <bar>${bar.value}</bar> </environmentVariables></configuration>

testy działają dobrze z Maven cli, mvn -e test, ale mogą się nie udać z każdą wersją wtyczki TestNG Eclipse sprzed 6.9.10. W takim przypadku musisz ręcznie skopiować właściwości systemu, aby uruchomić konfigurację dla każdego testu.

na szczęście dzisiaj Wtyczka TestNG Eclipse może analizować konfigurację maven-surefire/failsafe-plugin, automatycznie dołączać je do konfiguracji uruchamiania. W ten sposób zachowanie jest jak najbardziej zbliżone do działania w wierszu poleceń. Aby uzyskać więcej informacji, zapoznaj się z oficjalnym przewodnikiem.

Uwaga: równoważna funkcja integracji Gradle z Eclipse Buildship jest w trakcie planowania, możesz śledzić zgłoszenie tutaj.

Wtyczka TestNG Eclipse wewnętrzna

pomocne jest zrozumienie rdzenia wtyczki TestNG Eclipse, zwłaszcza gdy masz problemy z jej użyciem.

po uruchomieniu testu wtyczka musi uzyskać wyniki testu z procesu testowego i wyświetlić je w widoku w czasie rzeczywistym.

komunikacja pomiędzy wtyczką a procesem runtime test odbywa się poprzez gniazdo. Wtyczka najpierw uruchamia serwer gniazda. Podczas gdy jest on w procesie testowym, istnieje zestaw słuchaczy, którzy podłączają się do TestNG runtime i wysyłają wyniki testu z powrotem do wtyczki przez gniazdo.

funkcje komunikacji z gniazdami są utrzymywane w projekcie 'testng-remote’ na Githubie.

Ostatnie słowa

ciągle ulepszamy doświadczenie wtyczki TestNG Eclipse, Prześlij swoje opinie i pomysły na temat projektu GitHub tutaj.

o autorze

XuQing Tan

Nick Tan
Ebates

  • GitHub
  • LinkedIn

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.