how take screenshot selenium
Deze tutorial legt het belang van Selenium Screenshot uit en hoe je Ashot gebruikt om Screenshot te maken in de Selenium-applicatie met voorbeelden:
Schermafbeeldingen worden in principe gebruikt bij buganalyse. Ze helpen om te begrijpen of de applicatie werkt volgens de gebruikersvereisten of niet.
Voor elk testgeval kan de ontvangen uitvoer anders zijn, soms wordt de juiste uitvoer ontvangen, soms krijgen we een foutmelding, soms wordt een foutmelding ontvangen vanwege ontbrekende of onvoldoende invoergegevens, enz. Screenshot helpt bij het volgen van de bewijzen van acties / uitvoer ontvangen.
Bekijk hier ALLE Selenium-tutorials
In deze tutorial zullen we leren waar Selenium-screenshots nodig zijn. We zullen Ashot bespreken en hoe we Ashot in Selenium kunnen gebruiken (installatie en configuratie van ashot ()), leren screenshots te maken in Selenium (voor de hele webpagina, voor een enkel element op de pagina en voor een momenteel geopend venster, waarbij we ook 2 afbeeldingen) en kijk dan naar een paar voorbeelden waar vaak screenshots worden gemaakt.
Wat je leert:
Inzicht in Selenium-screenshots
De bovenstaande afbeelding is een voorbeeld van een schermafbeelding die is vastgelegd tijdens het uitvoeren van code vanaf de Gmail-website. De afbeelding helpt om te bevestigen dat de gebruiker met succes is ingelogd op het e-mailaccount met de juiste gebruikersnaam en wachtwoord.
Schermafbeeldingen zijn dus erg handig bij het vastleggen van de acties / uitvoer die worden ontvangen nadat een actie is uitgevoerd en helpen daarom bij het bevestigen dat een actie zonder problemen wordt uitgevoerd.
Selenium kan automatisch screenshots maken; we hoeven alleen maar code toe te voegen voor een screenshot tijdens het uitvoeren van elke code waarbij screenshots nodig zijn.
Waar zijn selenium-screenshots nodig?
Hieronder volgen de mogelijkheden:
hoe mkv-bestand op Windows te openen
- Als het moeilijk is om een element op een webpagina te vinden.
- Waar er een time-out is bij het zoeken naar webelementen op een pagina.
- Wanneer er een fout of probleem optreedt in het systeem / de applicatie.
- Wanneer een beweringsfout wordt aangetroffen.
Wat is Ashot
Ashot () is een hulpprogramma van derden dat wordt ondersteund door het Selenium-webstuurprogramma om de schermafbeeldingen te maken.
Ashot () biedt onderstaande bewerkingen voor het maken van schermafbeeldingen:
- De volledige pagina vastleggen
- Het webelement vastleggen
- Afbeeldingen vergelijken
Laten we eens kijken hoe dit precies werkt in de volgende sectie.
Eigenschappen van Ashot:
- Het is mogelijk om van de hele pagina een screenshot te maken.
- Het is ook mogelijk om een screenshot te maken van een webelement, dat wordt ondersteund op verschillende platforms zoals Android Emulator Browser, iOS Simulator Mobile Safari, de verschillende desktopbrowsers).
- Biedt een flexibele vergelijking van schermafbeeldingen.
- Verfraait screenshots.
Ashot kan in drie stappen screenshots maken:
- Maakt een screenshot van de volledige pagina.
- Zoek de grootte en positie van het element.
- Snijdt de originele schermafbeelding bij.
Hoe kunnen we Ashot in selenium gebruiken
Overweeg de volgende stappen voor het downloaden en configureren van Ashot op uw computer:
- Ga naar het koppeling.
- Zoek de nieuwste versie van het jar-bestand dat aanwezig is voor Ashot.
- Download het jar-bestand en sla het op een specifiek pad op uw computer op.
- Nu voor het toevoegen van het jar-bestand aan uw project in Eclipse: ga naar uw project -> klik met de rechtermuisknop -> ga naar eigenschappen -> selecteer Build Path -> Bibliotheken -> voeg externe potten toe
- Blader door het pad waar het gedownloade jar-bestand is opgeslagen.
- Selecteer het jar-bestand, klik op Toepassen en sluit.
Screenshots maken in Selenium
Selenium biedt ingebouwde functionaliteit voor het maken van schermafbeeldingen. Vanaf het vereiste, TakesScreenshot interface wordt gebruikt om schermafbeeldingen te maken tijdens het uitvoeren van de Selenium-scripts. Zo helpt Selenium Webdriver bij het maken van schermafbeeldingen terwijl de code wordt uitgevoerd.
In het onderstaande gedeelte leren we over de verschillende soorten schermafbeeldingen die worden vastgelegd.
Hieronder volgen de soorten:
Een screenshot maken van:
- Huidig open raam
- De hele webpagina
- Gewoon een specifiek webelement
- Vergelijking van screenshotafbeelding met de originele afbeelding
Laten we de bovenstaande punten in detail begrijpen.
# 1) Huidig open venster
Laten we eens kijken naar de implementatie van code voor het verwerken van schermafbeeldingen in Selenium voor het momenteel geopende venster:
De onderstaande afbeelding is de uitvoer van de bovenstaande code-implementatie. Hier is de OrangeHRM-site open en wordt het screenshot van de inlogpagina vastgelegd.
(beeld bron
Zo kunnen we schermafbeeldingen maken waar nodig tijdens het uitvoeren van code. Het gemaakte screenshot wordt opgeslagen in een bestand met de extensie .png of .jpeg. We moeten het pad opgeven waar het afbeeldingsbestand moet worden opgeslagen.
wat is mijn router login en wachtwoord
# 2) De hele webpagina
Laten we eens kijken naar de onderstaande implementatiecode voor het maken van een screenshot van de volledige pagina, met behulp van Ashot in Selenium webdriver. Laten we hiervoor het voorbeeld bekijken van een pagina (Jmeter-user-defined-variables) van - softwaretestinghelp.com
Hier de jmeter-gebruiker-gedefinieerde-variabelen pagina van onze website: www.softwaretestinghelp.com wordt geopend en dan hebben we een screenshot gemaakt van deze complete webpagina (met behulp van ashot () in selenium) in .png-formaat en opgeslagen op het gewenste pad. Op dezelfde manier kunnen we een screenshot van de hele pagina maken voor elke webpagina.
Dus bij het implementeren van de bovenstaande code voor het vastleggen van de schermafbeelding van de hele pagina, is de ontvangen uitvoer zoals weergegeven in de onderstaande afbeelding voor een volledige schermafbeelding van een webpagina.
# 3) Een webelement
Laten we eens kijken naar de onderstaande implementatiecode, met het gebruik van Ashot in Selenium webdriver om een screenshot te maken van een specifiek webelement op de webpagina.
Dus bij het implementeren van de bovenstaande code voor het maken van een screenshot van een specifiek element (hier tabblad Onderhoud), de ontvangen uitvoer is zoals weergegeven in de onderstaande afbeelding.
Hier kiezen we het tabblad 'Onderhoud' als element waarvoor een screenshot vereist is. Noem het pad waar we de schermafbeelding willen opslaan. Op dezelfde manier kunnen we ook op een dergelijke website een screenshot maken voor elk ander element.
# 4) Screenshot vergelijken met originele afbeelding
Laten we de onderstaande implementatiecode eens bekijken met behulp van Ashot in Selenium webdriver om een screenshot van een logo-element op de webpagina te maken en deze te vergelijken met het originele logo.
Laten we hiervoor het voorbeeld bekijken van naukri.com
Dus bij het implementeren van de bovenstaande code voor vergelijking van de schermafbeelding van een logo-element (hier naukri.com-logo), is de ontvangen uitvoer zoals weergegeven in de onderstaande afbeelding.
voorbeeld voor abstracte interface in java
Hier kiezen we het logo van 'naukri.com', maken de schermafbeelding en vervolgens wordt het vergeleken met het originele logo. Het verschil tussen afbeeldingen wordt gevonden met behulp van ingebouwde functies. Als er geen verschil wordt gevonden in de 2 logo-afbeeldingen, drukt het programma de uitvoer af als ' Beide logo-afbeeldingen kwamen overeen 'Else prints' De logo-afbeeldingen zijn verschillend
Voorbeelden waarbij vaak schermafbeeldingen worden gemaakt
# 1) Uitlogbevestiging
Om in te loggen op een website, moeten we de juiste gebruikersnaam en wachtwoord invoeren, waarna we worden ingelogd op de website. Vervolgens voert de gebruiker de vereiste opties uit en eenmaal klaar met het werk, wordt de gebruiker uitgelogd.
Dus als we een code voor een screenshot opgeven nadat we zijn uitgelogd, wordt opnieuw een inlogpagina weergegeven die de uitlogactie zou bevestigen. Zie de onderstaande afbeelding voor meer details:
# 2) Bevestiging van een nieuw aangemaakt record
Door code voor screenshot toe te voegen nadat u een nieuw record heeft gemaakt, bevestigt u dat het record is gemaakt. Zie de onderstaande schermafbeelding voor meer details.
In het geval dat het record niet is gemaakt, zou de code niet verder gaan om een screenshot te maken en dit zou bevestigen dat het record niet met succes wordt gemaakt.
# 3) Voorbeeld van ontbrekende / onjuiste uitvoer
Dit voorbeeld omvat het aanmaken van een nieuw record voor Functie op de OrangeHRM-website. Hier is het veld Functietitel gemarkeerd met ‘*’, wat betekent dat het een verplicht veld is. Het record wordt dus pas aangemaakt als de verplichte velden zijn ingevuld en alleen dan kunnen wij het record opslaan. Zie de onderstaande schermafbeelding voor meer details.
Gevolgtrekking
In dit artikel hebben we dus gezien waar Selenium-schermafbeeldingen nodig zijn, hoe we schermafbeeldingen in Selenium kunnen verwerken, wat Ashot is, hoe het kan worden gedownload, geconfigureerd en daadwerkelijk kan worden gebruikt in Selenium. We begrepen de implementatie van code voor het omgaan met schermafbeeldingen en zagen ook een paar voorbeelden waarbij schermafbeeldingen vaak worden gemaakt.
Lees de complete seleniumgids door
Aanbevolen literatuur
- 30+ beste selenium-zelfstudies: leer selenium met echte voorbeelden
- Selenium Find Element By Text Tutorial met voorbeelden
- Inleiding tot Selenium WebDriver - Selenium Tutorial # 8
- ChromeDriver Selenium-zelfstudie: Selenium Webdriver-tests op Chrome
- Omgaan met iFrames met behulp van de Selenium WebDriver switchTo () -methode
- Hoe een Gradle-project te maken met selenium
- Omgaan met waarschuwingen / pop-ups in Selenium WebDriver - Selenium Tutorial # 16
- Hoe om te gaan met de schuifbalk in Selenium Webdriver