Hoe u mislukte testgevallen kunt uitvoeren TestNG: Selenium webdriver
In deze tutorial leer je-
- Maak een Selenium Project
- Converteren en uitvoeren Selenium Projecteren naar TestNG
- Uitvoeren TestNG via de opdrachtregel
- Alleen mislukte testgevallen uitvoeren
- Het bestand testng-failed.xml uitvoeren vanaf de opdrachtregel
Maak een Selenium Project
Bereid het project voor
Stap 1) In Eclipse, Creëren Java project door op Nieuw te klikken Java Project
Stap 2) In deze stap,
- Geef projectnaam
- Kies uitvoeringsomgeving
- Selecteer de optie Projectindeling
- Klik op de knop “Voltooien”.
Wanneer u op de knop Voltooien klikt. Het Java-project “TestProject” is gemaakt. Het “TestProject” zal er als volgt uitzien.
Stap 3) Open dat nieuw gemaakte project. U zult de map “src” in Pakketverkenner kunnen zien.
- Klik met de rechtermuisknop op het project en selecteer “Nieuw”
- Optiepakket selecteren
Stap 4) In deze stap,
- Blader door de src-map en selecteer pakket
- Geef de pakketnaam en
- Klik ten slotte op de knop Voltooien. (pakketnaam->com.test)
Nadat u op “voltooien” heeft geklikt, ziet de projectstructuur er als volgt uit:
Stap 5) In deze stap,
- Klik nu met de rechtermuisknop op het nieuw gemaakte pakket en
- Selecteer de optie ‘klas’.
Een nieuw venster wordt geopend.
Stap 6) In deze stap,
- Geef de naam ‘klasse’
- Selecteer modificaties
- Blader en selecteer superklasse java.lang.object
- Klik op de knop Voltooien.
Hier maakt u twee klassen, bijvoorbeeld: DemoA, DemoB.
Maak eerst een klassendemoA.
Wanneer u op de knop "Voltooien" klikt. Dan zal het een klasse als volgt maken:
Maak op dezelfde manier klasse DemoB. Wanneer u op "Voltooien" klikt, ziet de knopklasse er als volgt uit:
Stap 7) Als je hebt geïnstalleerd TestNG bibliotheek, klik gewoon op Java Project—>Eigenschappen.
Stap 8) Nu in het eigenschappenvenster,
- Klik op Java Pad bouwen
- Klik op Bibliotheken
- Klik op Bibliotheek toevoegen.
Volgende
- Klik op “TestNg” en vervolgens
- Klik op "Volgende".
Klik vervolgens op de knop “Voltooien”.
Schrijf daarna de volgende code.
Voor klassedemoA
Code Verklaring:
- Driver.manage().window().maximize();
Deze regel maximaliseert het browservenster.
- driver.get(https://www.google.co.in);
Op deze regel wordt de opgegeven URL in het URL-veld ingevoerd.
- driver.findElement(By.name(“q”)).sendKeys(“Hallo”);
Met deze regel wordt het zoekvak 'Google' geïdentificeerd en worden de gegevens ingevoerd die u met de sendKeys-methode hebt verzonden.
Uitvoer: Het bovenstaande programma bevat de fouten, dus het is niet mogelijk om het uit te voeren.
Hetzelfde geldt voor Klasse DemoB,
De met rode kleur onderstreepte woorden zijn de fouten hier. Omdat je het jar-bestand dat deze klassen en interfaces bevat, nog niet hebt toegevoegd. Om de fouten in de bovenstaande code te verwijderen, voegt u het bijbehorende jar-bestand toe. Klik met de rechtermuisknop op de Java Project en selecteer “Eigenschappen”.
Stap 8) In het eigenschappenvenster
- Klik op Java Bouw een pad in het linkernavigatievenster.
- Klik op het tabblad Bibliotheken,
- Klik op Externe JAR's toevoegen en selecteer de Selenium-zelfstandig jar-bestand
- Klik op de knop “OK”.
Na deze stap worden alle fouten automatisch verwijderd. Als dat niet het geval is, plaats dan de muis op de code die fouten toont en importeer alle benodigde klassen en interfaces.
Voor @test als het nog steeds fouten toont, plaats dan de muis daar. Het zal de mogelijke opties tonen. Klik dan op toevoegen TestNG Bibliotheek optie. Doe het op dezelfde manier ook voor andere 'klassen'.
Nadat u uw code in beide klassen, bijvoorbeeld DemoA, DemoB, hebt geschreven, gaat u naar de volgende stap.
Stap 9) In deze stap,
- Klik met de rechtermuisknop op het project en
- Selecteer de optie map om een map te maken met de naam 'lib' en plak het testNG jar-bestand en het selenium jar-bestand (selenium-server-standalone ).(Testen en Selenium-server-standalone jar-bestand moet worden gedownload van het web en opgeslagen in uw systeem. U moet handmatig naar die map gaan en deze twee jars kopiëren en met de rechtermuisknop klikken op de map 'lib' die aanwezig is in Eclipse en klikken op plakken)
Stap 10) In deze stap,
1. Selecteer de bovenliggende map
2. Geef de mapnaam 'lib' en (Het primaire doel van het toevoegen van deze twee jar-bestanden aan de lib-map is dat u, terwijl u vanaf de opdrachtprompt uitvoert, de compiler kunt vertellen dat de vereiste jar-bestanden voor de uitvoering van het programma op deze locatie aanwezig zijn. Als u testng.xml vanuit Eclipse wilt uitvoeren, is deze lib-map helemaal niet vereist)
3. Klik op de knop 'Voltooien'
Testen en Selenium-server-standalone jar-bestand moet worden gedownload van het web en opgeslagen in uw systeem. U moet handmatig naar die map gaan en deze twee jars kopiëren en met de rechtermuisknop klikken op de map 'lib' die aanwezig is in Eclipse en klikken op plakken
Nadat u een map hebt gemaakt, is de volgende stap het converteren van onze programma's DemoA en DemoB naar het bestand Testng.xml.
Converteren en uitvoeren Selenium Projecteren naar TestNG
Stap 1) In deze stap,
- Selecteer twee Java-bestanden die aanwezig zijn onder het pakket en klik met de rechtermuisknop.
- Selecteer de optie genaamd “testNG.”
- Klik op converteren naar “testNG”.
Stap 2) Er opent een nieuw venster. Voer in dit venster details in zoals
- Locatie
- Suitenaam
- Test naam
- Klasse Selectie
- Parallelle modus
- Klik op de knop “Voltooien”.
Vervolgens wordt het bestand testng.xml aangemaakt onder het Java-project. Het ziet er dan zo uit.
(als u dat testng.xml-bestand wilt uitvoeren, klikt u met de rechtermuisknop op dat testng.xml-bestand in het linkernavigatievenster in Pakketverkenner en klikt u op Uitvoeren als TestNG Suite. )
Stap 3) Het testng.xml-suitebestand ziet er als volgt uit:
Als je eerst de DemoA-klasse wilt uitvoeren, verwijder dan die volledige regel en voeg deze als volgt toe vóór de DemoB-klasse:
Stap 4) Nadat u het bestand testng.xml hebt uitgevoerd, worden de resultaten op de volgende manier weergegeven. (Aangezien u geen uitvoerbare instructies hebt geschreven met System.out.println(), wordt er niets afgedrukt in het consolevenster.)
Dit is een van de manieren waarop u een test kunt uitvoeren via Eclipse. Als u hetzelfde testng.xml-suitebestand wilt uitvoeren dat twee klassebestanden bevat, zoals DemoA en DemoB, vanaf de opdrachtprompt, moet u de onderstaande stappen volgen.
Open nu de opdrachtprompt en ga naar de Project-werkruimte.
Uitvoeren TestNG via de opdrachtregel
U moet de locatie van de projectruimte vinden
Stap 1) Klik eerst met de rechtermuisknop op de Java Project en selecteer de optie Eigenschappen. Selecteer in het eigenschappenvenster de optie resource.
Stap 2) Wanneer u nu op de link “bron” klikt, aanwezig in het linkernavigatievenster. Het laat zien waar het project precies is opgeslagen
De projectwerkruimte is C:\Gebruikers\Gebruiker\Desktop\Guru99\TestProject. U wijzigt dus de map naar die specifieke locatie.
Stap 3) Typ vervolgens de volgende opdracht. (Deze opdracht is een algemene opdracht)
java –cp “pad van de lib-map aanwezig in de werkruimte\*; pad van de bin-map aanwezig in de projectwerkruimte; pad van het testng.jar-bestand aanwezig in de lib-map van de projectwerkruimte” org.testng.TestNG testenng.xml
maar voor ons project moet je de volgende opdracht schrijven.
Java –cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*; C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG testng.xml
Stap 4) Druk vervolgens op Enter. Zowel de klassen DemoA als DemoB zullen hun uitvoering starten. Ten slotte wordt het resultaat weergegeven op de opdrachtprompt.
Alleen mislukte testgevallen uitvoeren
Als u alleen mislukte testgevallen wilt uitvoeren via de Eclipseen vernieuw vervolgens eerst het project.
Stap 1) Klik met de rechtermuisknop op het Java-project (Demo A en B).
Selecteer de vernieuwingsoptie of selecteer eenvoudigweg het Java-project en druk op F5.
Stap 2) Vervolgens kunt u de map met testuitvoer zien.
In die map staat een bestand met de naam testng-failed.xml.
Stap 3) Klik met de rechtermuisknop op dit bestand en klik op Uitvoeren als en selecteer de optie “testNG suite”.
Stel dat als u drie testgevallen heeft en alle testgevallen succesvol zijn uitgevoerd, dit betekent dat u deze map niet kunt zien onder de map test-uitvoer. Deze map verschijnt alleen als een van de testgevallen is mislukt. Voer vervolgens dit bestand uit. Het zal alleen mislukte testgevallen uitvoeren.
Het bestand testng-failed.xml uitvoeren vanaf de opdrachtregel
Stap 1) Om mislukte testgevallen uit te voeren via de opdrachtprompt. Open de opdrachtprompt en ga naar de Project-werkruimte.
Mijn projectwerkruimte is C:\Gebruikers\Gebruiker\Desktop\Guru99\TestProject. U wijzigt dus de map naar die specifieke locatie.
Stap 2) Typ de volgende opdracht. (Deze opdracht is een algemene opdracht)
java –cp “pad van de lib-map aanwezig in de werkruimte\*; pad van de bin-map aanwezig in de projectwerkruimte; pad van het testing.jar-bestand aanwezig in de lib-map van de projectwerkruimte” org.testng.TestNG test-output/testng-mislukt.xml
Voor ons project moet u de volgende opdracht schrijven.
Java –cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*; C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG test-output/testng-failed.xml
Stap 3) Druk vervolgens op Enter. Er worden alleen mislukte klassen uitgevoerd en de weergave komt alleen overeen met die klasse.
In de bovenstaande klasse, dat wil zeggen DemoB, wijzigt u de code gewoon als volgt.
driver.findElement(By.name("a")).sendKeys("Bye");
De bovenstaande code zal geen enkel element vinden. Het zal dus de uitzondering genereren. Maar in ons programma handelt u de uitzondering niet af, dus ons programma stopt met het uitvoeren van de resterende code. Om deze reden zal de Klasse B falen.
Samenvatting
- TestNG is een Automation Testing Framework dat is geïnspireerd op Junit en verschillende annotaties bevat.
- TestNG genereert de rapporten in zijn standaardrapport, dat de volgende zaken bevat:
- Hoeveel testgevallen zijn er?
- Hoeveel testgevallen zijn geslaagd?
- Hoeveel testgevallen zijn mislukt?
- Hoeveel testgevallen worden overgeslagen?
- Meerdere testgevallen kunnen eenvoudig worden gegroepeerd en uitgevoerd door testklassen naar een testsuitebestand te converteren.
- TestNG kan eenvoudig worden geïntegreerd met andere tools van derden. Het biedt verschillende functies, zoals het toewijzen van prioriteit aan de testgevallen, het meerdere keren uitvoeren van dezelfde testcase met behulp van het aantal aanroepen.
- Als een van de testcases mislukt tijdens het uitvoeren van meerdere testcases, kunt u die specifieke testcase afzonderlijk uitvoeren.
- De statische methode “log” van de Reporter-klasse kan worden gebruikt om loginformatie op te slaan die aanwezig is in org.testng