Cum să executați cazuri de testare eșuate în TestNG

⚡ Rezumat inteligent

Rularea cazurilor de testare eșuate în TestNG permite testerilor să izoleze și să reexecute doar testele care nu au trecut, economisind timp și reducând execuția redundantă în întreaga suită.

  • 🛠️ Configurare proiect: Crearea unei Java proiect in Eclipse, adăuga TestNG și Selenium biblioteci JAR și definesc două clase de testare (DemoA și DemoB).
  • 🔄 TestNG Conversie: Converti Java clase la o TestNG suită făcând clic dreapta și selectând TestNG opțiunea de conversie pentru a genera testng.xml.
  • 💻 Executarea liniei de comandă: Rulați suita testng.xml din linia de comandă folosind comanda java -cp cu calea de clasă corectă care indică folderele lib și bin.
  • Detectare test eșuat: TestNG generează automat un fișier testng-failed.xml în folderul test-output ori de câte ori unul sau mai multe cazuri de testare eșuează.
  • 🔁 Reluați testele eșuate: Executați testng-failed.xml fie din Eclipse (Executare ca TestNG Suite) sau linia de comandă pentru a rula din nou doar cazurile de testare eșuate.

Crearea unei Selenium Proiect

Pregătiți proiectul înainte de a-l converti în TestNGPașii de mai jos vă prezintă crearea unui Java proiect in Eclipse, configurarea structurii pachetului și adăugarea bibliotecilor JAR necesare.

Pas 1) In Eclipse, creeaza o Java proiect făcând clic pe Nou Java Proiect.

Crearea unei Selenium Proiect

Pas 2) În acest pas:

  1. Dați un nume proiectului.
  2. Alegeți mediul de execuție.
  3. Selectați opțiunea de aspect al proiectului.
  4. Apasă pe finalizarea butonul.

Crearea unei Selenium Proiect

După ce faceți clic pe Terminare, TestProject Java Proiectul este creat și va apărea în Package Explorer.

Crearea unei Selenium Proiect

Pas 3) Deschideți proiectul nou creat. Veți vedea src folderul din Exploratorul de pachete.

  1. Faceți clic dreapta pe proiect și selectați Nou.
  2. selectaţi Pachet opțiune.

Crearea unei Selenium Proiect

Pas 4) În acest pas:

  1. Răsfoiți folderul src și selectați pachetul.
  2. Dați un nume pachetului.
  3. Clic finalizarea(Nume pachet: com.test)

Crearea unei Selenium Proiect

După ce faceți clic finalizarea, structura proiectului va arăta astfel:

Crearea unei Selenium Proiect

Pas 5) În acest pas:

  1. Faceți clic dreapta pe pachetul nou creat.
  2. selectaţi Clasă opțiune.

Crearea unei Selenium Proiect

Se va deschide o fereastră nouă.

Pas 6) În acest pas:

  1. Dați un nume clasei.
  2. Selectați modificatori.
  3. Căutați și selectați superclasa java.lang.Object.
  4. Clic finalizarea.

Aici, creați două clase: DemoA și Demobiliza.

Mai întâi, creați clasa DemoA.

Crearea unei Selenium Proiect

După ce faceți clic finalizarea, clasa va fi creată:

Crearea unei Selenium Proiect

În mod similar, creați clasa DemoB:

Crearea unei Selenium Proiect

Pas 7) Dacă ați instalat fișierul TestNG bibliotecă, faceți clic pe Java Proiect → Proprietăți.

Crearea unei Selenium Proiect

Pas 8) În fereastra Proprietăți:

  1. Faceţi clic pe Java Construiți calea.
  2. Faceţi clic pe Biblioteci.
  3. Faceţi clic pe Adăugați bibliotecă.

Crearea unei Selenium Proiect

Următor →:

  1. Faceţi clic pe TestNG și apoi
  2. Faceţi clic pe Pagina Următoare →.

Crearea unei Selenium Proiect

Apoi faceți clic pe finalizarea butonul.

Crearea unei Selenium Proiect

După aceasta, scrieți următorul cod.

Pentru Demonstrația Clasei A:

Crearea unei Selenium Proiect

Code Explicaţie:

  • driver.manage().window().maximize(); — maximizează fereastra browserului.
  • driver.get("https://www.google.co.in"); — introduce specificatul URL în câmpul de adresă.
  • driver.findElement(By.name("q")).sendKeys("Hi"); — localizează Google casetă de căutare și introduce text folosind metoda sendKeys.

ieșire: Programul de mai sus conține erori, deci nu poate fi executat ca atare.

În mod similar, pentru clasa DemoB:

Crearea unei Selenium Proiect

Cuvintele subliniate cu roșu indică erori, deoarece fișierul JAR necesar nu a fost încă adăugat. Pentru a remedia aceste erori, adăugați fișierul JAR corespunzător. Faceți clic dreapta pe Java Proiectare și selectare Proprietăţi.

Crearea unei Selenium Proiect

Pasul 8 (continuare) În fereastra Proprietăți:

  1. Faceţi clic pe Java Construiți calea în panoul de navigare din stânga.
  2. Dati click pe Biblioteci tab.
  3. Clic Adăugați JAR-uri externe Și selectați Selenium fișier JAR independent.
  4. Clic OK.

Crearea unei Selenium Proiect

După acest pas, toate erorile vor fi eliminate automat. Dacă există erori, treceți cu mouse-ul peste codul marcat cu eroare și importați clasele și interfețele necesare. Pentru @Test erori, treceți cu mouse-ul peste și selectați Adăuga TestNG Bibliotecă.

Pas 9) În acest pas:

  1. Faceți clic dreapta pe proiect și selectați Dosar opțiunea de a crea un folder numit lib.
  2. Lipiți TestNG JAR și Selenium JAR (selenium-server-standalone) ) în acest folder. Descărcați ambele JAR-uri de pe web, copiați-le, apoi faceți clic dreapta pe folderul lib din Eclipse și selectați Lipire.

Crearea unei Selenium Proiect

Pas 10) În acest pas:

  1. Selectați folderul părinte.
  2. Dați folderului numele lib(Acest folder este necesar doar pentru execuția din linia de comandă; nu este necesar atunci când rulați testng.xml din Eclipse.)
  3. Clic finalizarea.

Crearea unei Selenium Proiect

După crearea folderului, următorul pas este convertirea programelor DemoA și DemoB într-un fișier testng.xml.

Convertiți și executați Selenium Proiect la TestNG

Pas 1) În acest pas:

  1. Selectați cele două Java fișierele din pachet și faceți clic dreapta pe ele.
  2. selectaţi TestNG opțiune.
  3. Clic Schimba in TestNG.

Convertiți și executați Selenium Proiect la TestNG

Pas 2) Se deschide o fereastră nouă. Introduceți următoarele detalii:

  1. Locație
  2. Nume suită
  3. Numele testului
  4. Selectarea clasei
  5. Modul paralel
  6. Clic finalizarea.

Convertiți și executați Selenium Proiect la TestNG

Fișierul testng.xml este creat sub Java proiect și va arăta astfel:

Convertiți și executați Selenium Proiect la TestNG

(Pentru a rula testng.xml din Eclipse: faceți clic dreapta pe fișier în Package Explorer și selectați Run As TestNG Suită.)

Pas 3) Fișierul suită testng.xml va arăta astfel:

Convertiți și executați Selenium Proiect la TestNG

Dacă vrei să execuți mai întâi DemoA, elimină linia sa și adaugă-o înainte de DemoB:

Convertiți și executați Selenium Proiect la TestNG

Convertiți și executați Selenium Proiect la TestNG

Pas 4) După executarea fișierului testng.xml, rezultatul va fi afișat după cum urmează. (Nu apare nicio ieșire din consolă deoarece nu au fost scrise instrucțiuni System.out.println().)

Convertiți și executați Selenium Proiect la TestNG

Aceasta este o modalitate de a executa teste prin EclipsePentru a rula aceeași suită testng.xml din promptul de comandă, urmați pașii de mai jos.

Executa TestNG prin linia de comandă

Pentru a rula un TestNG suită din linia de comandă, trebuie mai întâi să localizați calea spațiului de lucru al proiectului și să construiți comanda classpath corectă.

Pas 1) Faceți clic dreapta pe Java proiect și selectați ProprietăţiÎn fereastra Proprietăți, selectați Resursă.

Executa TestNG prin linia de comandă

Pas 2) Apasă pe Resursă linkul din panoul de navigare din stânga pentru a vedea locația exactă de stocare a proiectului.

Executa TestNG prin linia de comandă

Spațiul de lucru al proiectului este C:\Utilizatori\Utilizator\Desktop\Guru99\Proiect de testareSchimbați directorul în locația respectivă în promptul de comandă.

Pas 3) Tastați următoarea comandă generică:

java –cp "path_of_lib_folder\*; path_of_bin_folder; path_of_testng.jar" org.testng.TestNG testng.xml

Pentru acest proiect, utilizați:

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

Pas 4) Anunturi IntrațiAtât DemoA, cât și DemoB se vor executa, iar rezultatul va fi afișat în linia de comandă.

Executa TestNG prin linia de comandă

Cum să rulați doar cazurile de testare eșuate

Dacă doriți să executați doar cazurile de testare eșuate prin Eclipse, mai întâi reîmprospătați proiectul.

Pas 1) Faceți clic dreapta pe Java proiect (DemoA și DemoB) și selectați Reîmprospăta, sau selectați proiectul și apăsați F5.

Pas 2) Veți vedea acum rezultat de test dosar. În interiorul acestuia, există un fișier numit testng-eșuat.xml.

Execută doar cazurile de testare eșuate

Pas 3) Faceți clic dreapta pe acest fișier și selectați Executare ca → TestNG Suită.

Notă: folderul test-output apare numai atunci când cel puțin un caz de testare a eșuat. Dacă toate cazurile de testare sunt acceptate, folderul nu va conține fișierul testng-failed.xml. Rularea acestui fișier reexecută doar cazurile de testare eșuate.

Execută doar cazurile de testare eșuate

Rularea fișierului testng-failed.xml din linia de comandă

Pas 1) Deschideți promptul de comandă și navigați la spațiul de lucru al proiectului.

Rularea testng-failed.xml din linia de comandă

Spațiul de lucru al proiectului este C:\Utilizatori\Utilizator\Desktop\Guru99\Proiect de testareSchimbați directorul în locația respectivă.

Pas 2) Tastați următoarea comandă generică:

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

Pentru acest proiect:

Java –cp "C:\Users\User\Desktop\Guru99\TestProject\lib\*;
C:\Users\User\Desktop\Guru99\TestProject\bin" org.testng.TestNG test-output/testng-failed.xml

Pas 3) Anunturi Intrați. TestNG va rula doar clasele eșuate și va afișa rezultatele pentru acele clase.

În DemoB, dacă modificați codul în felul următor, elementul nu va fi găsit și va fi generată o excepție. Deoarece excepția nu este gestionată, clasa va eșua:

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

Rularea testng-failed.xml din linia de comandă

Întrebări frecvente

TestNG salvează raportul de testare eșuată ca testng-failed.xml în folderul test-output al proiectului după orice rulare de testare care include eșecuri.

Da. Faceți clic dreapta pe testng-failed.xml în Eclipse și selectați Executare ca TestNG Suite sau utilizați comanda java -cp din linia de comandă care indică spre test-output/testng-failed.xml.

TestNG creează fișierul testng-failed.xml doar atunci când cel puțin un test eșuează. Dacă toate testele sunt reușite, fișierul XML eșuat lipsește din test-output.

Da. Instrumentele de inteligență artificială pot analiza stiva traces și conținutul testng-failed.xml pentru a identifica cauzele principale, a sugera corecții de cod și a recomanda automat îmbunătățiri ale aserțiunilor.

IA poate genera implementări IRetryAnalyzer, poate clasifica erorile instabile de cele reale și poate ajusta automat numărul de reîncercări pe baza modelelor istorice ale rezultatelor testelor.

Rezumați această postare cu: