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;
- Koden 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.