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-
- Adnotacje Java
- Zainstaluj TestNG
- Testowanie jednostek AngularJS
- Testowanie kompatybilności