Hoe u mislukte testgevallen kunt uitvoeren TestNG

โšก Slimme samenvatting

Het uitvoeren van mislukte testgevallen in TestNG Hiermee kunnen testers alleen de tests isoleren en opnieuw uitvoeren die niet geslaagd zijn, wat tijd bespaart en dubbele uitvoering van de volledige testsuite vermindert.

  • ๏ธ Projectopstelling: Maak een Java project in Eclipse, Voegen TestNG en Selenium JAR-bibliotheken, en definieer twee testklassen (DemoA en DemoB).
  • ๐Ÿ”„ TestNG Konversion: Converteren Java lessen naar een TestNG suite door met de rechtermuisknop te klikken en de optie te selecteren TestNG Converteer de optie om testng.xml te genereren.
  • ๐Ÿ’ป Uitvoeren via de opdrachtregel: Voer de testng.xml-suite uit vanuit de opdrachtprompt met het commando `java -cp`, waarbij het classpath correct verwijst naar de mappen `lib` en `bin`.
  • โŒ Detectie van mislukte tests: TestNG Genereert automatisch een testng-failed.xml-bestand in de test-output-map wanneer een of meer testgevallen mislukken.
  • ๐Ÿ” Tests die mislukt zijn opnieuw uitvoeren: Voer testng-failed.xml uit vanuit Eclipse (Uitvoeren als TestNG Suite) of de opdrachtregel om alleen de mislukte testgevallen opnieuw uit te voeren.

Maak een Selenium Project

Bereid het project voor voordat u het converteert naar TestNGDe onderstaande stappen beschrijven hoe je een Java project in Eclipse, het opzetten van de pakketstructuur en het toevoegen van de benodigde JAR-bibliotheken.

Stap 1) In Eclipse, Maak een Java project door op Nieuw te klikken Java Project.

Maak een Selenium Project

Stap 2) In deze stap:

  1. Geef het project een naam.
  2. Kies de uitvoeringsomgeving.
  3. Selecteer de projectindeling.
  4. Klik op de Finish knop.

Maak een Selenium Project

Na het klikken op Voltooien, de Testproject Java Het project is aangemaakt en verschijnt in de Package Explorer.

Maak een Selenium Project

Stap 3) Open het zojuist aangemaakte project. Je ziet dan het volgende: src map in de Package Explorer.

  1. Klik met de rechtermuisknop op het project en selecteer Nieuwe.
  2. Selecteer het Pakket optie.

Maak een Selenium Project

Stap 4) In deze stap:

  1. Blader naar de map src en selecteer het pakket.
  2. Geef het pakket een naam.
  3. Klik Finish(Pakketnaam: com.test)

Maak een Selenium Project

na het klikken op FinishDe projectstructuur zal er als volgt uitzien:

Maak een Selenium Project

Stap 5) In deze stap:

  1. Klik met de rechtermuisknop op het zojuist aangemaakte pakket.
  2. Selecteer het Klasse optie.

Maak een Selenium Project

Een nieuw venster wordt geopend.

Stap 6) In deze stap:

  1. Geef de klas een naam.
  2. Selecteer modifiers.
  3. Blader en selecteer de superklasse java.lang.Object.
  4. Klik Finish.

Hier maak je twee klassen aan: DemoA en DemoB.

Maak eerst de klasse DemoA aan.

Maak een Selenium Project

na het klikken op Finish, de klasse zal worden aangemaakt:

Maak een Selenium Project

Maak op dezelfde manier de klasse DemoB aan:

Maak een Selenium Project

Stap 7) Als u het TestNG bibliotheek, klik op Java Project โ†’ Eigenschappen.

Maak een Selenium Project

Stap 8) In het venster Eigenschappen:

  1. Klik op Java Pad bouwen.
  2. Klik op Bibliotheken.
  3. Klik op Bibliotheek toevoegen.

Maak een Selenium Project

Vervolg:

  1. Klik op TestNG en
  2. Klik op Volgende.

Maak een Selenium Project

Klik vervolgens op de Finish knop.

Maak een Selenium Project

Schrijf daarna de volgende code.

Voor lesdemoA:

Maak een Selenium Project

Code Uitleg:

  • driver.manage().window().maximize(); โ€” maximaliseert het browservenster.
  • driver.get("https://www.google.co.in"); โ€” voert de opgegeven waarde in URL in het adresveld.
  • driver.findElement(By.name("q")).sendKeys("Hi"); โ€” lokaliseert de Google Het invoerveld wordt gebruikt om tekst in te voeren met behulp van de sendKeys-methode.

Output: Het bovenstaande programma bevat fouten en kan daarom niet direct worden uitgevoerd.

Hetzelfde geldt voor klasse DemoB:

Maak een Selenium Project

De rood onderstreepte woorden geven fouten aan omdat het vereiste JAR-bestand nog niet is toegevoegd. Om deze fouten te verhelpen, voegt u het bijbehorende JAR-bestand toe. Klik met de rechtermuisknop op het bestand. Java Project en selecteer Aanbod.

Maak een Selenium Project

Stap 8 vervolg) In het venster Eigenschappen:

  1. Klik op Java Pad bouwen in het linkernavigatievenster.
  2. Klik op de Bibliotheken Tab.
  3. Klik Externe JAR-bestanden toevoegen in en selecteer het Selenium zelfstandig JAR-bestand.
  4. Klik OK.

Maak een Selenium Project

Na deze stap worden alle fouten automatisch verwijderd. Als er nog fouten overblijven, ga dan met de muis over de betreffende code en importeer de benodigde klassen en interfaces. @Test fouten, beweeg de muis eroverheen en selecteer Toevoegen TestNG Bibliotheek.

Stap 9) In deze stap:

  1. Klik met de rechtermuisknop op het project en selecteer de optie Map optie om een โ€‹โ€‹map te maken met de naam lib.
  2. Plak de TestNG JAR en Selenium JAR (selenium-server-standalone ) in deze map. Download beide JAR-bestanden van internet, kopieer ze en klik vervolgens met de rechtermuisknop op de map 'lib' in Eclipse en selecteer Plakken.

Maak een Selenium Project

Stap 10) In deze stap:

  1. Selecteer de bovenliggende map.
  2. Geef de map de naam lib(Deze map is alleen nodig voor het uitvoeren via de opdrachtregel; deze is niet nodig bij het uitvoeren van testng.xml vanuit Eclipse.)
  3. Klik Finish.

Maak een Selenium Project

Na het aanmaken van de map is de volgende stap het converteren van de programma's DemoA en DemoB naar een testng.xml-bestand.

Converteren en uitvoeren Selenium Projecteren naar TestNG

Stap 1) In deze stap:

  1. Selecteer de twee Java bestanden in het pakket en klik met de rechtermuisknop.
  2. Selecteer het TestNG optie.
  3. Klik Omzetten naar TestNG.

Converteren en uitvoeren Selenium Projecteren naar TestNG

Stap 2) Er wordt een nieuw venster geopend. Voer de volgende gegevens in:

  1. Lokatie
  2. Suitenaam
  3. Test naam
  4. Klasse Selectie
  5. Parallelle modus
  6. Klik Finish.

Converteren en uitvoeren Selenium Projecteren naar TestNG

Het testng.xml-bestand wordt aangemaakt onder de Java Het project zal er als volgt uitzien:

Converteren en uitvoeren Selenium Projecteren naar TestNG

(Om testng.xml uit te voeren vanuit Eclipse: klik met de rechtermuisknop op het bestand in de Package Explorer en selecteer Rennen als TestNG Suite.)

Stap 3) Het testng.xml-suitebestand ziet er als volgt uit:

Converteren en uitvoeren Selenium Projecteren naar TestNG

Als je DemoA eerst wilt uitvoeren, verwijder dan de bijbehorende regel en voeg deze toe vรณรณr DemoB:

Converteren en uitvoeren Selenium Projecteren naar TestNG

Converteren en uitvoeren Selenium Projecteren naar TestNG

Stap 4) Na het uitvoeren van het bestand testng.xml wordt het resultaat als volgt weergegeven. (Er verschijnt geen console-uitvoer omdat er geen System.out.println()-instructies zijn geschreven.)

Converteren en uitvoeren Selenium Projecteren naar TestNG

Dit is รฉรฉn manier om tests uit te voeren via EclipseOm dezelfde testng.xml-suite vanuit de opdrachtprompt uit te voeren, volgt u de onderstaande stappen.

Uitvoeren TestNG via de opdrachtregel

Om een TestNG Om de suite vanuit de commandoregel te kunnen gebruiken, moet u eerst het projectwerkruimtepad vinden en de juiste classpath-opdracht samenstellen.

Stap 1) Klik met de rechtermuisknop op de Java project en selecteer AanbodSelecteer in het venster Eigenschappen de optie Informatiebronnen .

Uitvoeren TestNG via de opdrachtregel

Stap 2) Klik op de Informatiebronnen Gebruik de link in het navigatiepaneel aan de linkerkant om de exacte opslaglocatie van het project te bekijken.

Uitvoeren TestNG via de opdrachtregel

De projectwerkruimte is C:\Gebruikers\Gebruiker\Bureaublad\Guru99\TestProjectWijzig de directory naar die locatie in de opdrachtprompt.

Stap 3) Voer de volgende algemene opdracht in:

java โ€“cp "path_of_lib_folder\*; path_of_bin_folder; path_of_testng.jar" org.testng.TestNG testng.xml

Gebruik voor dit project:

Java โ€“cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*;
  C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG testng.xml

Stap 4) Media EnterZowel DemoA als DemoB worden uitgevoerd en het resultaat wordt weergegeven in de opdrachtprompt.

Uitvoeren TestNG via de opdrachtregel

Hoe voer je alleen de mislukte testgevallen uit?

Als u alleen de mislukte testgevallen wilt uitvoeren via EclipseVernieuw eerst het project.

Stap 1) Klik met de rechtermuisknop op de Java project (DemoA en DemoB) en selecteer verversenof selecteer het project en druk op F5.

Stap 2) U ziet nu de test-uitvoer map. Daarin bevindt zich een bestand met de naam testng-failed.xml.

Voer alleen mislukte testgevallen uit

Stap 3) Klik met de rechtermuisknop op dit bestand en selecteer Uitvoeren als โ†’ TestNG Suite.

Let op: de map test-output verschijnt alleen als ten minste รฉรฉn testcase is mislukt. Als alle testcases slagen, bevat de map geen testng-failed.xml. Door dit bestand uit te voeren, worden alleen de mislukte testcases opnieuw uitgevoerd.

Voer alleen mislukte testgevallen uit

Het uitvoeren van testng-failed.xml vanaf de opdrachtregel

Stap 1) Open de opdrachtprompt en navigeer naar de projectwerkruimte.

Het uitvoeren van testng-failed.xml vanaf de opdrachtregel

De projectwerkruimte is C:\Gebruikers\Gebruiker\Bureaublad\Guru99\TestProjectGa naar die locatie.

Stap 2) Voer de volgende algemene opdracht in:

java โ€“cp "path_of_lib_folder\*; path_of_bin_folder; path_of_testng.jar" org.testng.TestNG test-output/testng-failed.xml

Voor dit project:

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) Media Enter. TestNG Alleen de mislukte lessen worden uitgevoerd en de resultaten voor die lessen worden weergegeven.

In DemoB, als je de code als volgt wijzigt, wordt het element niet gevonden en wordt er een uitzondering gegenereerd. Omdat de uitzondering niet wordt afgehandeld, zal de klasse mislukken:

driver.findElement(By.name("a")).sendKeys("Bye");

Het uitvoeren van testng-failed.xml vanaf de opdrachtregel

Veelgestelde vragen

TestNG Slaat het rapport van de mislukte test op als testng-failed.xml in de test-output-map van uw project na elke testrun die fouten bevat.

Ja. Klik met de rechtermuisknop op testng-failed.xml in Eclipse en selecteer 'Uitvoeren als'. TestNG Suite, of gebruik de opdracht `java -cp` in de opdrachtprompt, verwijzend naar `test-output/testng-failed.xml`.

TestNG Het bestand testng-failed.xml wordt alleen aangemaakt als ten minste รฉรฉn test mislukt. Als alle tests slagen, ontbreekt het bestand met de foutmelding in de testoutput.

Ja. AI-tools kunnen stacks analyseren. tracDe inhoud van es en testng-failed.xml wordt gebruikt om de hoofdoorzaken te achterhalen, codecorrecties voor te stellen en automatisch verbeteringen aan de assertions aan te bevelen.

AI kan IRetryAnalyzer-implementaties genereren, onbetrouwbare van echte fouten classificeren en het aantal herhaalpogingen automatisch aanpassen op basis van historische testresultaten.

Vat dit bericht samen met: