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

  1. Klik pรฅ indstillingen "emailable-report.html"
  2. Klik pรฅ indstillingen webbrowser

Emailable-Report.html

Outputtet rapporterer i TestNG rapportering vil se ud som nedenfor, hvis begge klasser er bestรฅet:

Emailable-Report.html

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:

Emailable-Report.html

Pรฅ samme mรฅde vil resultatet for Class DemoA se sรฅdan ud:

Emailable-Report.html

Metode-2: index.html

  1. Hรธjreklik pรฅ index.html fra projektbiblioteket.
  2. Vรฆlg mulighed รฅben med webbrowser mulighed. Det vil vise resultatet i fรธlgende rรฆkkefรธlge.

index.html

Resultatet vil se sรฅdan ud:

index.html

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:

  1. Reporter.log(String s);
  2. Reporter.log(String s, Boolean logToStandardOut);
  3. Reporter.log(String s, int niveau);
  4. 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.

Reporter klasse

For klassedemoB:

Reporter klasse

  • 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.
  1. I test-output-mappen skal du รฅbne emailable-report.html. Det vil se sรฅdan ud:

    Reporter klasse

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:

Reporter klasse

Klik pรฅ reporteroutput. Det vil รฅbne logningsoplysninger, uanset hvad der er skrevet i testmetoderne.

Reporter klasse

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.

Reporter klasse

Opsummer dette indlรฆg med: