Być może przeprowadziłeś wiele testów przy użyciu różnych funkcji testng i nigdy nie uznać testu „przeszedł” lub „nie powiodło się” podczas tych egzekucji. Nadszedł czas, aby uruchomić niektóre rzeczywiste testy za pomocą selenium WebDriver w testng teraz, kiedy znamy wszystkie kluczowe zasady w testng. Skorzystamy z Testng Twierdza dla tego celu. W tym artykule przeprowadzono wdrożenie metod Assert i opisuje kod miękkie i twarde korzyści. W tym samouczku wykonujemy dwa przypadki: proste aspekty oraz twarde i miękkie aspekty. Ta zawartość opisuje użycie miękkiego twierdzenia w porównaniu z twardym twierdzeniem. Przed napisaniem skryptu mamy tendencję do instalowania Java JDK i Eclipse, dodawania bibliotek słoików selenium i skonfiguruj zależności wraz z sterownikami przeglądarki.
Wymagania:
Przed napisaniem kodu należy utworzyć środowisko programistyczne do uruchamiania i wykonywania kodu. Najpierw zainstaluj i skonfiguruj zestaw JDK i Eclipse. Następnie musisz pobrać i dołączyć plik JAR TESTNG w instalacji Eclipse, aby użyć twierdzenia w sterowniku internetowym. Możesz uzyskać pliki JAR Testng z podanego linku: https: // mvnrepository.com/artefact/org.testng/testng. Następnie dodaj pliki JAR do biblioteki Eclipse w następującym procesie: Przejdź do opcji Project => Wybuduj i skonfiguruj> Java Build Path> Biblioteki, aby dodać te pobrane słoiki zewnętrzne. Teraz dodaj zależności do Eclipse> POM.plik XML.
io.github.Bonigarcia WebDriverManager 5.3.1 test org.Apache.Maven Maven-Artifact 4.0.0-alfa-2
Testng twierdzenie z przykładem:
W tym samouczku omówimy dwa przypadki:
Przypadek 1:
Przechodzimy przez podstawowe metody assert w celu weryfikacji.
Krok # 1: Utwórz klasę void
Aby zastosować twierdzenie, musimy utworzyć osobną klasę „publiczną pustkę” i przeprowadzić testy twierdzeń w tej klasie, w przeciwieństwie do innych właściwości selenium testowania automatyzacji za pomocą głównej klasy statycznej.
public void titletest ()
Krok 2: Skonfiguruj Webdriver
W tym kroku skonfigurujemy sterownik przeglądarki za pomocą następującego skryptu, którego przeglądarka Chrome używa do tego samouczka. Poniższy kod skryptu używa:
WebDriverManager.chromedriver ().organizować coś();
Chromedriver Driver = new Chromedriver ();
Krok #3: Otwórz przeglądarkę
Na tym etapie przeglądarka Chrome otworzy dany adres URL strony internetowej. Jak w tym przykładzie, użyj https: // www.eBay.com/ strona.
Użyj następującej metody skryptu:
kierowca.Get ("https: // www.eBay.com/”);
Można to zobaczyć na poniższym rysunku, że chrom jest kontrolowany przez zautomatyzowane oprogramowanie testowe.
Krok #4: Wyszukiwanie tytułu ze strony
Na tym etapie przeglądarka Chrome otworzy dany adres URL strony internetowej. Jak w tym przykładzie, użyj https: // www.eBay.com/ strona.
Sprawdź stronę internetową i znajdź tytuł strony internetowej. Jak pokazano na poniższym rysunku.
Elektronika, samochody, moda, kolekcje i więcej | eBay
Oto składnia:
Zmienna string = „Tytuł”
Tytuł jest ciągiem, który tworzy zmienną ciąg.
Krok #5: Ustaw oczekiwany tytuł
W tym etapie skopiowany tytuł ze strony zostanie użyty do utworzenia ciągu dla oczekiwanego tytułu.
Jak pokazano w poniższym kodzie, String utworzył zmienną „oczekiwaneTitle”.
String OczekiwanyTiTle = "Electronics, Cars, Fashion, Collectibles & More | eBay";
Krok #6: Zdobądź rzeczywisty tytuł
W tym kroku otrzymujemy faktyczny tytuł za pomocą metody getTitle ().
Zgodnie z ciągiem kodu, utworzyliśmy zmienną „rzeczywistąTitle”, która zapisuje metodę getTitle ().
String AuthalTitle = sterownik.getTitle ();
Krok 7: Sprawdź tytuł, który otrzymujemy
W tym kroku dopasowujemy rzeczywisty tytuł do oczekiwanego tytułu.
Składnia podano poniżej:
Zapewniać.Metoda (rzeczywista, oczekiwana)
Istnieje wiele metod aktywów, takich jak Assertequal, Assertunequal i itp.
Jak widać, parametr ma dwie wartości:
Poniższy kod, który używa metody AsserTequal () do dopasowania do tytułu obu, jest taki sam, czy nie.
Zapewniać.AsserTequals (faktyczneTitle, oczekiwaneTitle);
Krok #8: Match Title True Case
Kiedy faktyczny tytuł strony i oczekiwany tytuł dopasowuje się, warunek jest prawdziwy.
Rozważ przykład podany poniżej:
String OczekiwanyTiTle = "Electronics, Cars, Fashion, Collectibles & More | eBay";
String AuthalTitle = sterownik.getTitle ();
Zapewniać.AsserTequals (faktyczneTitle, oczekiwaneTitle);
Pierwszy wiersz kodu to oczekiwany tytuł. Potem otrzymujemy rzeczywisty tytuł. Następnie metoda Assert () jest używana do dopasowania faktycznego i oczekiwanego tytułu.
Wyjście w konsoli
Po uruchomieniu powyższego kodu wyjście pokazuje w konsoli, że kod został pomyślnie wykonany, a test został przekazany = Titletest.
Krok #9: Nieudany tytuł meczowy
Kiedy faktyczny tytuł strony i oczekiwany tytuł dopasowuje się, warunek się nie powiedzie.
Wyjście w konsoli:
Po uruchomieniu powyższego kodu wyjście pokazuje w konsoli, że kod wykonany bezskutecznie, a test został nie udany = Titletest.
Przypadek 2:
W tym przypadku przechodzimy miękkie twierdzenie i trudne twierdzenie.
Trudne twierdzenie i miękkie twierdzenie:
W wielu przypadkach istnieją wymagania dotyczące twierdzenia. Możesz mieć wiele twierdzeń w jednym przypadku testowym. W konkretnych przypadkach testowych jest pięć sześciu różnych punktów weryfikacyjnych. Jakbyś otrzymał niepowodzenie w jednym konkretnym twierdzeniu, co stanie się z innymi twierdzeniami, które wyprzedzają to konkretne twierdzenie?
Przykładowy scenariusz:
Weryfikujesz tytuł, a mecz tytułowy nie powiódł się. Następnie weryfikujesz określony tekst i niektóre elementy internetowe na tej samej stronie.
Przypadek testowy o twardym stwierdzeniu
W twardym twierdzeniu, jeśli jakieś pojedyncze twierdzenie się nie powiodło, skrypt się tam zatrzyma.
Przykładowy scenariusz:
Ponieważ tytuł nie pasuje i jeśli używasz Assert.Metoda arrertequals (), a następnie przypadek testowy zatrzymuje się przy tej konkretnej awarii. Nie możesz pójść dalej i weryfikacji innych aktywów, które są dostępne w tym samym przypadku testowym. Twarde aktywa są wyzwaniem, ponieważ zatrzymują się, jeśli wystąpi pojedyncza awaria.
Oto przykładowy kod, który możesz uruchomić i zobaczyć wynik.
String OczekiwanyTiTle = "Electronics, Cars, Fashion, Collectibles & More | eBay";
String AuthalTitle = sterownik.getTitle ();
Zapewniać.AsserTequals (faktyczneTitle, oczekiwaneTitle);
Po uruchomieniu powyższego kodu dane wyjściowe pokazuje w Eclipse, że kod wykonywany bezskutecznie. I test został nie udany = titletest. Możemy zauważyć, że alert po prawej stronie w kolorze czerwonym wskazuje na alerty i zatrzymuje tam wykonywanie kodu.
Miękki test testowy
W przypadku miękkiego twierdzenia, weryfikacja Assert nie będzie kontynuowana, nawet jeśli awaria tam nastąpi, a awaria zapisuje. A scenariusz będzie kontynuowany.
Krok #1: Uzyskaj wartość przycisku wyszukiwania
W tym kroku sprawdźmy https: // www.eBay.com/ witryna i uzyskaj nazwę atrybutu przycisku wyszukiwania.
Składnia podano poniżej:
String Variable = „Nazwa wejściowa”
Oto przykładowy kod:
String OczekiwanoText = "Search";
Krok #2: Uzyskaj rzeczywisty tekst
W tym kroku otrzymujemy Xpath faktycznego tekstu wyszukiwania, wykonując kroki:
KLICK PRAWE WYKORZYSTANIE> KOD GOTO> kod przycisku prawości> Wybierz opcję Kopiuj> Kopiuj xpath = [//*[@id = ”gh-btn”] ”] skopiuje dla Ciebie xpath dla Ciebie.
Pobierz wartość atrybutu, atrybuty strony internetowej to (wartość, typ, klasa) i wybieramy atrybut wartości dla tego przykładu .GetAttribute Method () jest używany do uzyskania atrybutu.
Składnia jest tutaj podana:
.getAttribute (nazwa)
Przykładowy kod jest wymieniony tutaj:
String AuthalText = sterownik.FindElement (przez.xpath ("//*[@id =" gh-btn "]"))).getAttribute („wartość”);
.getAttribute („wartość”); => Zdobądź Vale i przechowuj w „ActueText”
Krok #3: Sprawdź tekst
Sprawdź za pomocą Assert.metoda assertequals ().
Klasa publiczna Verifysofttest
@Test
public void SearchBtntest () rzuca przerywanie expception
String OczekiwanyTiTle = "Electronics, Cars, Fashion, Collectibles & More | eBay";
String OczekiwanoText = "Search";
WebDriverManager.chromedriver ().organizować coś();
Chromedriver Driver = new Chromedriver ();
kierowca.Get ("https: // www.eBay.com/”);
String AuthalTitle = sterownik.getTitle ();
String AuthalText = sterownik.FindElement (przez.xpath ("//*[@id =" gh-btn "]"))).getAttribute („wartość”);
System.na zewnątrz.println („Weryfikacja tytułu”);
softassert.AsserTequals (ActualTitle, oczekiwanyTitle, „Weryfikacja tytułu nie powiodła się”);
System.na zewnątrz.println („weryfikacja tekstu”);
softassert.AsserTequals (rzeczywisteText, Oczekiwane tekst, „Weryfikacja tekstu nie powiodła się”);
System.na zewnątrz.println („Close Browser”);
kierowca.zamknąć();
Krok #4: Wykonaj kod
Tutaj wykonamy kod wspomniany w kroku nr 3 i zobaczymy wyjście.
Wyjście w Eclipse:
Po uruchomieniu powyższego kodu wyjście pokazuje w Eclipse. Ten kod został pomyślnie wykonany, a test został przekazany = SearchBtntest. Zielony kolor pokazuje przepustkę testową.
Wniosek
Trudno jest znaleźć kod testNG bez twierdzeń, ponieważ są to najczęściej stosowane metody w testng. W tym artykule ilustruje zastosowanie metody Assert przy użyciu frameworka selenium do testowania, tester określa, czy test się powiódł, a także wszelkie wyjątki za pośrednictwem narzędzia automatycznego sterowania. W tym samouczku piszemy kod, aby ustawić sterownik przeglądarki, uruchamiać sterownik przeglądarki i wykonujemy proste twierdzenia oraz miękkie i twarde twierdzenia. W tej treści nauczyłeś się, w jaki sposób miękkie twierdzenie jest ważniejsze niż trudne twierdzenie.