Kako izvršiti neuspjele testne slučajeve u TestNG

⚡ Pametni sažetak

Pokretanje neuspjelih testnih slučajeva u TestNG omogućuje testerima da izoliraju i ponovno izvrše samo testove koji nisu prošli, štedeći vrijeme i smanjujući redundantno izvršavanje u cijelom paketu.

  • 🛠️ Postavljanje projekta: Napravite Java projekt u Eclipse, dodati TestNG i Selenium JAR biblioteke i definirati dvije testne klase (DemoA i DemoB).
  • 🔄 TestNG Pretvorbe: pretvoriti Java razredi do TestNG paket desnim klikom i odabirom TestNG opcija pretvorbe za generiranje datoteke testng.xml.
  • 💻 Izvršavanje naredbenog retka: Pokrenite paket testng.xml iz naredbenog retka pomoću naredbe java -cp s ispravnom putanjom klase koja pokazuje na mape lib i bin.
  • Otkrivanje neuspjelog testa: TestNG automatski generira datoteku testng-failed.xml unutar mape test-output kad god jedan ili više testnih slučajeva ne uspiju.
  • 🔁 Ponovno pokretanje neuspjelih testova: Izvršite datoteku testng-failed.xml iz Eclipse (Pokreni kao TestNG Suite) ili naredbeni redak za ponovno pokretanje samo neuspjelih testnih slučajeva.

Napravite Selenium Projekt

Pripremite projekt prije nego što ga pretvorite u TestNGSljedeći koraci vode vas kroz izradu Java projekt u Eclipse, postavljanje strukture paketa i dodavanje potrebnih JAR biblioteka.

Korak 1) In Eclipse, stvoriti Java projekt klikom na Novo Java Projekt.

Napravite Selenium Projekt

Korak 2) U ovom koraku:

  1. Dajte naziv projektu.
  2. Odaberite okruženje za izvršavanje.
  3. Odaberite opciju izgleda projekta.
  4. kliknite završiti tipku.

Napravite Selenium Projekt

Nakon što kliknete Završi, Testni projekt Java Projekt je kreiran i pojavit će se u Package Exploreru.

Napravite Selenium Projekt

Korak 3) Otvorite novostvoreni projekt. Vidjet ćete src mapu u Pregledniku paketa.

  1. Desnom tipkom miša kliknite projekt i odaberite Novo.
  2. Odaberite Paket opcija.

Napravite Selenium Projekt

Korak 4) U ovom koraku:

  1. Pregledajte mapu src i odaberite paket.
  2. Dajte naziv paketu.
  3. Kliknite završiti. (Naziv paketa: com.test)

Napravite Selenium Projekt

Nakon što kliknete završiti, struktura projekta će izgledati ovako:

Napravite Selenium Projekt

Korak 5) U ovom koraku:

  1. Desnom tipkom miša kliknite na novokreirani paket.
  2. Odaberite Klasa opcija.

Napravite Selenium Projekt

Otvorit će se novi prozor.

Korak 6) U ovom koraku:

  1. Dajte naziv razredu.
  2. Odaberite modifikatore.
  3. Pregledajte i odaberite nadklasu java.lang.Object.
  4. Kliknite završiti.

Ovdje stvarate dvije klase: DemoA i DemoB.

Prvo, kreirajte klasu DemoA.

Napravite Selenium Projekt

Nakon što kliknete završiti, klasa će biti kreirana:

Napravite Selenium Projekt

Slično tome, kreirajte klasu DemoB:

Napravite Selenium Projekt

Korak 7) Ako ste instalirali TestNG knjižnica, kliknite na Java Projekt → Svojstva.

Napravite Selenium Projekt

Korak 8) U prozoru Svojstva:

  1. Kliknite na Java Put izgradnje.
  2. Kliknite na Knjižnice.
  3. Kliknite na Dodaj biblioteku.

Napravite Selenium Projekt

Sljedeći:

  1. Kliknite na TestNG a zatim
  2. Kliknite na Sljedeći.

Napravite Selenium Projekt

Zatim kliknite na završiti tipku.

Napravite Selenium Projekt

Nakon toga napišite sljedeći kod.

Za klasu DemoA:

Napravite Selenium Projekt

Code Objašnjenje:

  • driver.manage().window().maximize(); — maksimizira prozor preglednika.
  • driver.get("https://www.google.co.in"); — unosi navedeno URL u polje adrese.
  • driver.findElement(By.name("q")).sendKeys("Hi"); — locira Google okvir za pretraživanje i unosi tekst pomoću metode sendKeys.

Izlaz: Gornji program sadrži greške, stoga se ne može izvršiti kakav jest.

Slično tome, za klasu DemoB:

Napravite Selenium Projekt

Crveno podcrtane riječi označavaju pogreške jer potrebna JAR datoteka još nije dodana. Da biste ispravili te pogreške, dodajte odgovarajuću JAR datoteku. Desnom tipkom miša kliknite na Java Projekt i odabir Nekretnine.

Napravite Selenium Projekt

Korak 8 (nastavak) U prozoru Svojstva:

  1. Kliknite na Java Put izgradnje u lijevom navigacijskom oknu.
  2. Kliknite na Knjižnice Tab.
  3. Kliknite Dodajte vanjske JAR-ove I odaberite Selenium samostalna JAR datoteka.
  4. Kliknite OK.

Napravite Selenium Projekt

Nakon ovog koraka, sve će se pogreške automatski ukloniti. Ako neke ostanu, zadržite pokazivač miša iznad koda označenog s pogreškom i uvezite potrebne klase i sučelja. Za @Test pogreške, zadržite pokazivač miša i odaberite dodati TestNG Knjižnica.

Korak 9) U ovom koraku:

  1. Desnom tipkom miša kliknite na projekt i odaberite Mapa mogućnost stvaranja mape pod nazivom Pomoć.
  2. Zalijepite TestNG JAR i Selenium JAR (selenium-server-samostalni ) u ovu mapu. Preuzmite oba JAR-a s weba, kopirajte ih, a zatim desnom tipkom miša kliknite mapu lib u Eclipse i odaberite Zalijepi.

Napravite Selenium Projekt

Korak 10) U ovom koraku:

  1. Odaberite nadređenu mapu.
  2. Dajte naziv mapi Pomoć. (Ova mapa je potrebna samo za izvršavanje naredbenog retka; nije potrebna prilikom pokretanja datoteke testng.xml iz Eclipse.)
  3. Kliknite završiti.

Napravite Selenium Projekt

Nakon stvaranja mape, sljedeći korak je pretvoriti programe DemoA i DemoB u datoteku testng.xml.

Pretvori i izvrši Selenium Projekt za TestNG

Korak 1) U ovom koraku:

  1. Odaberite dva Java datoteke u paketu i kliknite desnom tipkom miša.
  2. Odaberite TestNG opcija.
  3. Kliknite Pretvoriti u TestNG.

Pretvori i izvrši Selenium Projekt za TestNG

Korak 2) Otvara se novi prozor. Unesite sljedeće podatke:

  1. Lokacija
  2. Naziv apartmana
  3. Naziv testa
  4. Odabir razreda
  5. Paralelni način rada
  6. Kliknite završiti.

Pretvori i izvrši Selenium Projekt za TestNG

Datoteka testng.xml se kreira pod Java projekt i izgledat će ovako:

Pretvori i izvrši Selenium Projekt za TestNG

(Za pokretanje datoteke testng.xml iz Eclipse: desnom tipkom miša kliknite datoteku u Package Exploreru i odaberite Trčati kao TestNG Apartman.)

Korak 3) Datoteka paketa testng.xml izgledat će ovako:

Pretvori i izvrši Selenium Projekt za TestNG

Ako prvo želite izvršiti DemoA, uklonite njegov redak i dodajte ga prije DemoB:

Pretvori i izvrši Selenium Projekt za TestNG

Pretvori i izvrši Selenium Projekt za TestNG

Korak 4) Nakon izvršavanja datoteke testng.xml, rezultat će biti prikazan na sljedeći način. (Ne pojavljuje se izlaz konzole jer nisu napisane naredbe System.out.println().)

Pretvori i izvrši Selenium Projekt za TestNG

Ovo je jedan od načina za izvršavanje testova putem EclipseZa pokretanje istog paketa testng.xml iz naredbenog retka slijedite korake u nastavku.

Izvršiti TestNG preko naredbenog retka

Za pokretanje a TestNG paketa iz naredbenog retka, prvo morate pronaći putanju radnog prostora projekta i konstruirati ispravnu naredbu classpath.

Korak 1) Desnom tipkom miša kliknite Java projekt i odabir NekretnineU prozoru Svojstva odaberite Resurs.

Izvršiti TestNG preko naredbenog retka

Korak 2) kliknite Resurs u lijevom navigacijskom oknu da biste vidjeli točnu lokaciju pohrane projekta.

Izvršiti TestNG preko naredbenog retka

Radni prostor projekta je C:\Korisnici\Korisnik\Radna površina\Guru99\Testni projektPromijenite direktorij na tu lokaciju u naredbenom retku.

Korak 3) Upišite sljedeću generičku naredbu:

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

Za ovaj projekt koristite:

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

Korak 4) Press ućiI DemoA i DemoB će se izvršiti, a rezultat će biti prikazan u naredbenom retku.

Izvršiti TestNG preko naredbenog retka

Kako pokrenuti samo neuspješne testne slučajeve

Ako želite izvršiti samo neuspješne testne slučajeve putem Eclipse, prvo osvježite projekt.

Korak 1) Desnom tipkom miša kliknite Java projekt (DemoA i DemoB) i odaberite Osvježitiili odaberite projekt i pritisnite F5.

Korak 2) Sada ćete vidjeti testni izlaz mapa. U njoj se nalazi datoteka pod nazivom testng-failed.xml.

Pokreni samo neuspješne testne slučajeve

Korak 3) Desnom tipkom miša kliknite na ovu datoteku i odaberite Pokreni kao → TestNG Apartman.

Napomena: mapa test-output pojavljuje se samo kada barem jedan testni slučaj nije uspio. Ako svi testni slučajevi prođu, mapa neće sadržavati testng-failed.xml. Pokretanjem ove datoteke ponovno se izvršavaju samo neuspjeli testni slučajevi.

Pokreni samo neuspješne testne slučajeve

Pokretanje datoteke testng-failed.xml iz naredbenog retka

Korak 1) Otvorite naredbeni redak i idite do radnog prostora projekta.

Pokretanje datoteke testng-failed.xml iz naredbenog retka

Radni prostor projekta je C:\Korisnici\Korisnik\Radna površina\Guru99\Testni projektPromijenite direktorij na tu lokaciju.

Korak 2) Upišite sljedeću generičku naredbu:

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

Za ovaj projekt:

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

Korak 3) Press ući. TestNG pokrenut će samo neuspješne klase i prikazati rezultate za te klase.

U DemoB-u, ako promijenite kod na sljedeći način, element neće biti pronađen i izbacit će se iznimka. Budući da iznimka nije obrađena, klasa će propasti:

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

Pokretanje datoteke testng-failed.xml iz naredbenog retka

Pitanja i odgovori

TestNG sprema izvješće o neuspjelom testiranju kao testng-failed.xml unutar mape test-output vašeg projekta nakon svakog testiranja koje uključuje neuspjehe.

Da. Desnom tipkom miša kliknite testng-failed.xml u Eclipse i odaberite Pokreni kao TestNG Suite ili upotrijebite naredbu java -cp u naredbenom retku koja pokazuje na test-output/testng-failed.xml.

TestNG Datoteka testng-failed.xml stvara se samo kada barem jedan test ne uspije. Ako svi testovi prođu, XML datoteka s neuspjelim rezultatima nedostaje u testnom izlazu.

Da. AI alati mogu analizirati stog traces i sadržaj testng-failed.xml za automatsko utvrđivanje uzroka, predlaganje ispravaka koda i preporuku za poboljšanja tvrdnji.

Umjetna inteligencija može generirati implementacije IRetryAnalyzera, klasificirati nestabilne i stvarne kvarove te automatski prilagoditi broj ponovnih pokušaja na temelju povijesnih obrazaca rezultata testiranja.

Sažmite ovu objavu uz: