TestNG Rapportgenerering i Selenium: Hvordan genererer man?
Hvad er TestNG Rapporter?
TestNG Rapporter er standard HTML-rapporter, som genereres, nรฅr testcaserne er udfรธrt vha TestNG. Disse rapporter hjรฆlper dig med at identificere oplysningerne om testcases og status for et projekt. TestNG rapporterer i Selenium har tre metoder passTest, failTest og skipTest for at kontrollere dataene om testcases.
Rapportgenerering er meget vigtig, nรฅr du laver automationstestning sรฅvel som for manuel test.
- Ved at se pรฅ resultatet kan du nemt identificere, hvor mange testsager der er bestรฅet, ikke bestรฅet og sprunget over.
- Ved at se pรฅ rapporten fรฅr du at vide, hvad status pรฅ projektet er.
Selenium web-driver bruges til at automatisere web-applikationen, men den vil ikke generere nogen rapporter.
- TestNG vil generere standardrapporten.
- Nรฅr du udfรธrer filen testng.xml, og opdaterer projektet. Du vil fรฅ en test-output mappe i den mappe til rapportering i TestNG.
- Hรธjreklik pรฅ emailable-report.html og vรฆlg muligheden. ร bn med webbrowseren.
Sรฅdan genererer du rapporter i Selenium
Metode-1: emailable-report.html
- Klik pรฅ indstillingen "emailable-report.html"
- Klik pรฅ indstillingen webbrowser
Outputtet rapporterer i TestNG rapportering vil se ud som nedenfor, hvis begge klasser er bestรฅet:
Overvej scenariet, hvor du bevidst fejler testsagen, dvs. DemoB-klassen. Konverter derefter begge klasser til testng.xml suite-filen og kรธr den. Sรฅ vil resultatet se sรฅdan ud. Det vil vise mislykkede testsager.
Dette er resultatet for DemoB-klassen:
Pรฅ samme mรฅde vil resultatet for Class DemoA se sรฅdan ud:
Metode-2: index.html
- Hรธjreklik pรฅ index.html fra projektbiblioteket.
- Vรฆlg mulighed รฅben med webbrowser mulighed. Det vil vise resultatet i fรธlgende rรฆkkefรธlge.
Resultatet vil se sรฅdan ud:
Metode-3: Reporterklasse
Sammen med disse TestNG rapportgenererede metoder, kan du bruge filen object.properties til at gemme de systemgenererede logfiler sรฅvel som brugergenererede logfiler. Men en af โโde enkleste mรฅder at gemme logoplysninger pรฅ i test er at bruge Reporter klasse.
Reporter.log ind Selenium er en klasse til stede i TestNG forum Selenium rapportering. Det giver 4 forskellige metoder til at gemme logoplysninger, de er:
- Reporter.log(String s);
- Reporter.log(String s, Boolean logToStandardOut);
- Reporter.log(String s, int niveau);
- Reporter.log(String s, int niveau, boolesk logToStandardOut);
Eksempel:
Opret to klasser sรฅsom DemoA og DemoB og skriv fรธlgende kode inde i klasserne.
For klasse DemoA;
- Code for DemoA er allerede forklaret ovenfor. Her bruger du logmetode for Reporter-klassen. (For at implementere en rapporteringsklasse skal klassen implementere en org.testng.IReporter-grรฆnseflade).
- Logmetoden er en statisk metode af Reporter-klassen. Sรฅ du fรฅr adgang til den metode gennem Reporter-klassen.
- Logmetoden bruges til at gemme logoplysninger, der er skrevet inde i programmet. Ved at se pรฅ logoplysningerne, vil du nemt komme til at vide, hvor nรธjagtigt udfรธrelsen af โโprogrammet stoppes.
For klassedemoB:
- Opret nu testng.xml fil ved at vรฆlge disse to klasser og
- Vรฆlg kรธr som og
- Klik pรฅ konverter til testng.
- Kรธr derefter denne testng.xml fil ved at vรฆlge kรธr som og vรฆlg testng suite.
- Opdater derefter projektet, รฅbn test-output-mappen.
Pรฅ samme mรฅde vil du ogsรฅ have et output til Demo B-projekt.
2. ร bn mappen index.html i test-output mappen. Det vil se sรฅdan ud:
Klik pรฅ reporteroutput. Det vil รฅbne logningsoplysninger, uanset hvad der er skrevet i testmetoderne.
Klik pรฅ Tiderne. Det vil vise, hvor meget tid det tog at kรธre testmetoden, der er til stede i klassen ved hjรฆlp af TestNG rapporteringsvรฆrktรธjer.












