guide generate extent reports selenium webdriver
Omvangrapporten genereren in Selenium WebDriver:
Selenium biedt ingebouwde rapporten met behulp van frameworks zoals JUnit en TestNG.
Hoewel de ingebouwde rapporten informatie bieden over de stappen die worden uitgevoerd als onderdeel van de testcase, hebben ze meer maatwerk nodig om te worden gedeeld met alle belangrijke belanghebbenden van het project.
Extent Reports is een aanpasbaar HTML-rapport ontwikkeld door Anshoo Arora dat kan worden geïntegreerd in Selenium WebDriver met behulp van JUnit- en TestNG-frameworks.
Deze tutorial geeft je een complete stap-voor-stap handleiding voor het genereren van extensierapporten in Selenium WebDrive met voorbeeldcodes.
Hieronder ziet u de momentopname van het ingebouwde rapport van TestNG-framework:
Omvangsrapporten bieden verschillende voordelen in vergelijking met de ingebouwde rapporten die worden gegenereerd via JUnit en TestNG, zoals taartdiagramweergave, stapsgewijze testrapportgeneratie, toevoegen van schermafbeeldingen enz., Bij elke teststap en een representatieve gebruikersinterface die kan worden gedeeld met alle belanghebbenden van het project.
Hieronder ziet u de momentopname van een voorbeeld van een omvangsrapport in een cirkeldiagramweergave
Notitie:Klik op een afbeelding voor een vergrote weergave)
Wat je leert:
- Voordelen van het gebruik van omvangrapporten
- Omvangsrapporten gebruiken in Selenium Webdriver
- Voorbeeldcode voor omvangrapporten
- Samenvatting testrapport
- Cirkeldiagram grafisch rapport
- Capture Screenshot in omvang rapporten
- Gevolgtrekking
- Aanbevolen literatuur
Voordelen van het gebruik van omvangrapporten
Er zijn verschillende voordelen van omvangrapporten en er worden er enkele hieronder besproken.
- Aanpasbaar HTML-rapport met stapsgewijze weergave en cirkeldiagramweergave.
- Geeft de tijd weer die nodig is voor de uitvoering van de testcase in het rapport.
- Elke teststap kan worden gekoppeld aan een screenshot.
- Meerdere testcases binnen een enkele suite kunnen gemakkelijk worden gevolgd.
- Kan eenvoudig worden geïntegreerd met TestNG- en JUnit-frameworks.
Omvangsrapporten gebruiken in Selenium Webdriver
Omvangsrapporten bevatten twee hoofdklassen die vaak worden gebruikt.
- ExtentReports klasse
- ExtentTest klasse
Syntaxis:
ExtentReports reports = new ExtentReports ('Pad van directory om het resulterende HTML-bestand op te slaan', true / false);
software geschreven in c ++
ExtentTest test = reports.startTest ('Testnaam');
De klasse Extent Reports wordt gebruikt om een HTML-rapport te genereren over het door de gebruiker opgegeven pad. De Booleaanse vlag geeft aan of het bestaande rapport moet worden overschreven of dat er een nieuw rapport moet worden gemaakt. Waarde ‘true’ is de standaardwaarde, wat betekent dat alle bestaande gegevens worden overschreven.
De klasse Extent Test wordt gebruikt om teststappen in het gegenereerde HTML-rapport te loggen.
De bovenstaande klassen kunnen worden gebruikt met de vaak gebruikte ingebouwde methoden die hieronder worden vermeld.
- startTest
- endTest
- Logboek
- doorspoelen
startTest en endTest methoden worden gebruikt om randvoorwaarden en postcondities van een testcase uit te voeren, terwijl de log-methode wordt gebruikt om de status van elke teststap op het resulterende HTML-rapport te loggen. De spoelmethode wordt gebruikt om eerdere gegevens in het rapport te wissen en een nieuw rapport te maken.
Teststatus kan een van de volgende waarden zijn:
- SLAGEN VOOR
- MISLUKT
- OVERSPRINGEN
- INFO
Syntaxis:
rapporten.endTest ();
test.log (LogStatus.PASS, 'Test geslaagd');
test.log (LogStatus.FAIL, 'Test mislukt');
test.log (LogStatus.SKIP, 'Test overgeslagen');
test.log (LogStatus.INFO, 'Test Info');
De logmethode neemt twee parameters aan: de eerste parameter is de teststatus en de tweede parameter is het bericht dat op het resulterende rapport moet worden afgedrukt.
Voorbeeldcode voor omvangrapporten
Hieronder wordt de reeks stappen genoemd om Extent Reports te gebruiken in Selenium Webdriver in Junit.
Stap 1:
Extent Reports kunnen direct worden gebruikt in selenium WebDriver door het JAR-bestand te importeren - omvangreports-java-2.41.2.jar dat kan worden hier gedownload
Zodra het ZIP-bestand is gedownload, extraheert u de inhoud van het ZIP-bestand in een map.
Stap 2:
hoe u een gekoppelde lijst in java initialiseert
Voeg de jar-bestanden die aanwezig zijn in het ZIP-bestand toe aan het buildpad van het project met behulp van de optie Build Path -> Build Path configureren.
Stap 3:
Maak een nieuwe JAVA-klasse met de onderstaande code voor Extent Reports.
Code Verklaring
@Voor klas:
De bovenstaande code demonstreert het gebruik van omvangrapporten. De uitvoering van een testcase begint met de methode startTest, waarbij het object Extent Reports wordt geïnitialiseerd. De parameter die aan het Extent Reports-object wordt doorgegeven, kan elk geldig door de gebruiker gedefinieerd pad zijn.
Eenvoudigheidshalve, het voorbeeld gebruikt de huidige projectdirectory om het resulterende HTML-rapport te genereren. De volgende instructie omvat de initialisatie van het ExtentTest-object met de retourwaarde van de startTest-methode.
@Test:
Testklasse omvat de volgende stappen:
- Open de Chrome-browser met deze url https://www.google.com
- Valideer de paginatitel met de verwachte waarde zodra de pagina is geopend.
- Registreer de testcase-status als PASS / FAIL met behulp van de logmethode van Extent Reports.
@Na de les:
After class bevat de code om de postcondities van de testcase uit te voeren, zoals het beëindigen van de test met de endTest-methode en het leegmaken van het rapport. Houd er rekening mee dat het rapport niet wordt gegenereerd als de methode flush () niet wordt gebruikt.
T is samenvattend rapport
Cirkeldiagram grafisch rapport
Capture Screenshot in omvang rapporten
Screen Capture en testuitvoering helpen een tester bij het debuggen van het testscript als er problemen optreden tijdens het uitvoeren van de test. Het is echter aan te raden screenshot vastleggen alleen als een teststap mislukt, omdat de afbeeldingen meer geheugen verbruiken als ze bij elke teststap worden vastgelegd.
Schermafbeeldingen kunnen worden gemaakt voor elke mislukte stap met behulp van de onderstaande code.
Code Verklaring
Capture-methode:
# 1) De methode getScreenShotAs () wordt gebruikt om de schermafbeelding van de huidige WebDriver-instantie vast te leggen en op te slaan in verschillende uitvoerformulieren.
Bestand scrFile = ((TakesScreenshot) stuurprogramma) .getScreenshotAs (OutputType.FILE);
#twee) getScreenShotAs-methode retourneert een bestandsobject dat moet worden opgeslagen op een bestandsvariabele. Houd er rekening mee dat het casten van de instantie van het webstuurprogramma naar Screenshot nemen verplicht is als u de methode wilt gebruiken.
# 3) File Dest = nieuw bestand ('src /../ ErrImages /' + System.currentTimeMillis () + '.png');
# 4) De bovenstaande instructie maakt een map met de naam ‘ErrImages’ aan in de map ‘src’ en slaat de bestandsnaam op als de huidige systeemtijd.
# 5) String errflpath = Dest.getAbsolutePath ();
FileUtils.copyFile (scrFile, Dest);
returnerrflpath;
# 6) De bovenstaande instructies kopiëren de foutbeelden naar de bestemmingsmap.
hoe apk op Android te openen
Log-methode:
De logmethode gebruikt de ingebouwde methode addScreenCapture van de klasse Extent Test om de schermafbeelding op te halen en toe te voegen aan het Extent Report.
test.log (LogStatus.FAIL, test.addScreenCapture (capture (driver)) + 'Test mislukt');
Het bericht dat is opgenomen met de logmethode kan een gedetailleerd bericht bevatten, inclusief verwachte en werkelijke resultaten voor foutopsporing.
Uitgang:
Gevolgtrekking
Omvangrapporten zijn een van de beste ingebouwde manieren om aanpasbare HTML-rapporten te genereren met een prettige gebruikersinterface in de Selenium-webdriver.
Het is een open source-bibliotheek die eenvoudig kan worden geconfigureerd met Selenium, waardoor het de beste keuze is voor automatiseringstesters.
Ik hoop dat je nu een duidelijk idee had van de omvangrapporten.
Aanbevolen literatuur
- Cucumber Selenium Tutorial: Cucumber Java Selenium WebDriver Integration
- Inleiding tot Selenium WebDriver - Selenium Tutorial # 8
- Implementatie van ons eerste WebDriver-script - Selenium WebDriver-zelfstudie # 10
- Selenium - Veelgestelde vragen
- Omgaan met waarschuwingen / pop-ups in Selenium WebDriver - Selenium Tutorial # 16
- Impliciet en expliciet wachten in Selenium WebDriver (soorten Selenium Waits)
- Selenium WebDriver uitvoeren in verschillende populaire browsers
- WebDriver Volledige installatie en installatie met Eclipse - Selenium Tutorial # 9