Wprowadzenie do adnotacji TestNG

Jak wiemy, TestNG to Framework Automatyzacji Testów, który jest używany wraz ze szkieletem Selenium w celu ułatwienia procesu automatyzacji testów. Ale powstaje pytanie, co to jest adnotacja i dlaczego są używane? Adnotacje w TestNG to instrukcja / kod, który jest dodawany do kodu, aby instruować kompilator, aby kontrolował przepływ wykonywania instrukcji testowych zgodnie ze szczegółowymi wymaganiami. Ponieważ istnieje sekwencja metod, zmiennych i funkcji, których należy przestrzegać, aby poprawnie wykonać przypadki testowe. Adnotacje TestNG prowadzą to do kompilatora za pomocą prostych i łatwych do zrozumienia adnotacji, a zatem nie ma potrzeby używania statycznej metody głównej w programie, która określa rozpoczęcie wykonywania kodu.

Adnotacje TestNG

Istnieją różne adnotacje TestNG, a każda adnotacja służy do innego celu. Adnotacje z ich objaśnieniami wymieniono poniżej:

1. @BeforeSuite: Ta metoda z adnotacjami jest uruchamiana przed uruchomieniem wszystkich testów w zestawie testów.

2. @AfterSuite: Ta metoda z adnotacjami jest uruchamiana po uruchomieniu wszystkich testów w określonym zestawie testów.

3. @BeforeTest: Ta metoda z adnotacjami jest uruchamiana przed każdą metodą testową związaną z klasą zdefiniowaną w znaczniku.

4. @AfterTest: Ta metoda z adnotacjami jest uruchamiana po wykonaniu każdej metody testowej związanej z klasą zdefiniowaną w znaczniku.

5. @BeforeClass: Ta opisana metoda jest uruchamiana tylko raz i jest wykonywana przed pierwszą metodą testową wspomnianej klasy.

6. @AfterClass: Ta opisana metoda jest uruchamiana tylko raz i jest wykonywana po wykonaniu wszystkich metod testowych wspomnianej / bieżącej klasy.

7. @Test: Ta metoda z adnotacjami oznacza dowolną klasę lub metodę jako część testu, który należy przetestować. Ma różne parametry wymienione poniżej:

  • alwaysRun: Metoda testowa zawsze działa, jeśli jest ustawiona na true, bez względu na przypadek testowy, od którego zależy.
  • dataProvider: określa nazwę dostawcy danych dla przypadku testowego.
  • zależy od metod: określa listę metod, od których zależy ta konkretna metoda.
  • dependsOnGroups : określa listę grup, od których zależy ta konkretna metoda.
  • Opis : określa opis metody
  • Włączone : określa, czy metoda jest włączona, czy nie. Jeśli jest ustawiona na false, wówczas ta metoda nie jest wykonywana lub jest uważana za nieobecną.
  • Priorytet : określa priorytet konkretnej metody testowej, po której należy ją wykonać. Wartości o niższym priorytecie są planowane jako pierwsze, a jeśli przypadki testowe nie są zdefiniowane żadnych wartości priorytetów, to TestNG przypisuje domyślną wartość priorytetu (0).
  • SuccessPercentage : określa procent sukcesu oczekiwany od tej metody.
  • invocationCount : jak sama nazwa wskazuje, określa liczbę wywołań metody.
  • timeOut : Definiuje maksymalną liczbę przypadków, jakie powinien wykonać dany przypadek testowy. Jest zdefiniowany w milisekundach.
  • InvocationTimeOut : Podobnie jak timeOut, określa liczbę milisekund, które powinna zająć metoda, aby zakończyć wszystkie zliczenia wywołania. Jego wartości są zawsze podawane w milisekundach.

8. @BeforeMethod: Ta opisana metoda działa przed każdą metodą testową.

9. @AfterMethod: Ta opatrzona adnotacją metoda będzie działać po każdej metodzie testowej.

10. @BeforeGroups: Ta opatrzona komentarzem metoda będzie działać przed pierwszą metodą testową odpowiedniej grupy, która jest częścią wykonania.

11. @AfterGroups: Ta opisana metoda będzie działać po wszystkich metodach testowych lub po wywołaniu ostatniej metody odpowiedniej grupy, która jest częścią wykonania.

12. @DataProvider: Ta metoda z adnotacjami służy do dostarczania danych do metody testowej. Może być używany z dowolną metodą @test w celu dostarczenia danych wejściowych. Służy do dostarczania złożonych parametrów do metod @test, których nie można podać w pliku XML. Każdy @DataProvider musi zwrócić Object () (), do którego każdemu Object () przypisana jest lista parametrów metody testowej. Ma atrybut „nazwa”, który należy podać, jeśli programista nie wspomina o nim, wówczas jego wartość jest ustawiona na nazwę metody. Ma jeden atrybut o nazwie „równoległy”, domyślnie „fałszywy”. Jeśli ustawione na true, to wszystkie przypadki testowe

13. @Listeners: Ta adnotacja służy do zdefiniowania detektorów w metodzie testowej.

14. @Parameters: Ta adnotacja służy do zdefiniowania parametrów w metodzie testowej. Stosuje się atrybut „Wartość” zawierający wszystkie nazwy zmiennych, które są używane jako parametry.

15. @Factory: Ta adnotacja służy do oznaczenia dowolnej metody testowej jako fabryki i zwraca obiekt (Object ()), który jest używany jako klasy TestNG przez plik TestNG.

Zalety adnotacji TestNG

Poniżej podano niektóre zalety adnotacji TestNG:

  • TestNG jest strukturą używaną z Selenium mającą adnotacje, które zapewniają łatwy i prosty w użyciu sposób kontrolowania przepływu wykonywania zautomatyzowanych przypadków testowych.
  • TestNG pomaga równolegle uruchamiać / wykonywać przypadki testowe.
  • TestNG zapewnia możliwość priorytetyzacji przypadków testowych zgodnie z wymaganiami programisty.
  • TestNG pomaga w grupowaniu przypadków testowych i ich odpowiednim wykonywaniu.
  • TestNG zapewnia doskonały sposób generowania raportów zgodnie z wynikami testu.
  • TestNG jest silnie typowany, co określa zdolność silnego sprawdzania błędów.
  • Zapewnia łatwy sposób przekazywania parametrów i wprowadzania danych wejściowych do przypadków testowych.
  • TestNG może także łączyć się z zewnętrznymi źródłami danych.
  • Nie ma potrzeby stosowania wzorca lub formatu do wykonania przypadków testowych. Adnotacje zapewniają funkcję wywoływania metod zgodnie ze szczegółowymi wymaganiami.
  • TestNG generuje raporty oparte na HTML reprezentujące dane w formacie graficznym, który jest łatwy i wygodniejszy do zrozumienia.

Wniosek

Powyższy opis jasno wyjaśnia różne adnotacje TestNG i cel każdej adnotacji w kontrolowaniu przepływu. Chociaż adnotacje TestNG są bardzo łatwe w użyciu i możemy ich używać zgodnie z wymaganiami, ale należy dokładnie zapoznać się z każdą adnotacją przed użyciem ich w automatyce testowej.

Polecane artykuły

To jest przewodnik po Adnotacjach TestNG. Tutaj omawiamy różne adnotacje TestNG z zaletami. Możesz również przejrzeć nasze inne powiązane artykuły, aby dowiedzieć się więcej-

  1. Adnotacje Java
  2. Zainstaluj TestNG
  3. Testowanie jednostek AngularJS
  4. Testowanie kompatybilności