how run selenium webdriver different popular browsers
Selenium ondersteunt alleen webgebaseerde applicaties en om ze te openen hebben we een browser nodig. Selenium kan verschillende browsers ondersteunen voor testautomatisering.
In deze tutorial leggen we uit hoe je stuurprogramma's instelt voor de verschillende browsers die op de markt verkrijgbaar zijn.
In de huidige branche zijn er slechts drie populaire browsers die veel worden gebruikt, namelijk Google Chrome, Mozilla Firefox en Internet Explorer. Selenium ondersteunt echter ook andere browsers. Om ons script op verschillende browsers uit te voeren, hebben we de driver van die browser nodig.
Lees hier alle Selenium-tutorials
Wat je leert:
- Hoe stuurprogramma's voor de verschillende browsers in te stellen
- Cross-browser testen met Selenium WebDriver
- Gevolgtrekking
Hoe stuurprogramma's voor de verschillende browsers in te stellen
Aanbevolen tool:
# 1) LambdaTest
Voer Selenium-automatiseringstests uit op een schaalbare, veilige en betrouwbare cloudgebaseerde Selenium Grid online. Versnel uw Selenium-testautomatisering en vergroot tegelijkertijd uw testdekking door te testen op een online infrastructuur van 2000+ desktop- en mobiele browseromgevingen.
Wanneer we voor het eerst beginnen met Selenium-automatisering, komt onze allereerste regel code als:
WebDriver-stuurprogramma = nieuwe FireFoxDriver ();
Het betekent dat WebDriver een interface is en dat we een referentievariabele (driver) definiëren waarvan het type een interface is.
Nu moet elk object dat we eraan toewijzen een instantie zijn van een klasse (FireFoxDriver) of andere stuurprogramma's die die interface implementeren. In ons geval is FireFoxDriver een klasse en is de interface WebDriver.
Wanneer al onze stuurprogramma-instellingen zijn voltooid, voeren we elk Selenium-commando uit, zoals:
driver.getTitle ();
Verwijs screenshot:
reguliere expressie in c ++
Wat er nu gebeurt, is dat intern een HTTP-verzoek wordt gemaakt en verzonden naar het specifieke browserstuurprogramma dat we hebben gedefinieerd, het browserstuurprogramma die HTTP-server gebruikt om de HTTP-verzoeken op te halen en het bepaalt de stappen die nodig zijn voor het implementeren van het Selenium-commando.
Onze gecreëerde logica wordt uitgevoerd in de browser, vervolgens wordt het uitvoeringsresultaat teruggestuurd naar de HTTP-server en stuurt het opnieuw de status terug naar het automatiseringsscript.
Na het instellen van de driver hebben we dus toegang tot alle ingebouwde methoden van de klasse van de driver, zoals:
- findElement ();
- dichtbij();
- getClass (); en nog veel meer
Verwijs Screenshot:
Om toegang te krijgen tot deze methoden, typ je ' bestuurder. ”In de editor en het zal alle methodes tonen of anders kun je op“ ctrl + spatiebalk ”drukken en het zal je de methodes tonen.
Verwijs screenshot:
Soms zijn ingebouwde methoden niet toegankelijk als u op 'ctrl + spatiebalk' drukt. Vervolgens moet u uw JAVA_HOME-padinstellingen die zijn gemaakt in Omgevingsvariabele controleren en ervoor zorgen dat ze correct zijn.
Stappen om omgevingsvariabele in te stellen:
- Ga naar Configuratiescherm -> Klik op Systeem
- Ga naar geavanceerde systeeminstellingen
- Klik op de knop Omgevingsvariabelen
- Stel het JAVA_HOME-pad in door op de nieuwe knop te klikken.
Selenium wordt geleverd met een standaard Mozilla Firefox-stuurprogramma dat is gebundeld in het Selenium WebDriver-jar-bestand. Daarom is voor het aanroepen van Firefox-stuurprogramma geen installatie vereist. Als we andere browsers willen gebruiken, moeten we de systeemeigenschap ervan instellen.
Aanbevolen lezen => Cross Browser-testen met behulp van Selenium Grid
Cross-browser testen met Selenium WebDriver
Nu zullen we de installatie en uitvoering van stuurprogramma's in de onderstaande browsers zien:
# 1) Mozilla Firefox
#twee) Google Chrome
# 3) Internet Explorer
# 4) Opera
# 5) Ghost Driver of PhantomJS
# 6) HTML-eenheid
De stuurprogramma's voor de genoemde browsers (behalve PhantomJS en HTML Unit - kijk hieronder voor deze) kunnen hier worden gedownload: SeleniumHQ
Ervan uitgaande dat jullie allemaal op de hoogte zijn van de verschillende hierboven genoemde browsers, zal ik nu uitleggen wat het is Ghost-stuurprogramma en HTML-eenheidstuurprogramma functionaliteit en hoe u ze instelt voor uw script.
# 1) HTML-eenheidstuurprogramma
Met behulp van deze driver kunnen we Headless Browser Testing uitvoeren, wat betekent dat er geen GUI voor is die u kunt zien terwijl deze intern wordt uitgevoerd. En u kunt niet alle bewerkingen uitvoeren zoals u in normale browsers doet.
Over het algemeen wordt HTML Unit Driver niet aanbevolen om te testen. We kunnen het echter gebruiken omdat het sneller is, de meest lichtgewicht implementatie van WebDriver wordt gebruikt voor het genereren van testgegevens, om de inhoud van een webpagina door te geven aan een ander programma of script.
Voor het gebruik van HTML Unit Driver is het niet nodig om extra API's of jar-bestanden te installeren. U kunt het gebruiken zodra u een standalone jar-bestand van de Selenium-server heeft.
Verwijs onderstaande code:
Uitvoer : Facebook - Inloggen of registreren
GESLAAGD : verifyFacebookTitle
HTML-eenheidstuurprogramma wordt niet aanbevolen voor complexe toepassingen en die jQuery of javascript of HTML 5 gebruiken. Standaard ondersteunt het geen javascript. Daarom moet u een voorwaarde geven om het te ondersteunen.
# 2) PhantomJS-stuurprogramma
De PhantomJS-browser wordt ook gebruikt voor het uitvoeren van Headless Browser Testing. Het maakt gebruik van een JavaScript-API. U kunt het gebruiken voor Headless Website Testing en toegang tot webpagina's. Een voordeel ten opzichte van HTML Unit Driver is dat het schermafbeeldingen kan maken. Dit betekent dat uw test op de achtergrond wordt uitgevoerd en de schermafbeeldingen zal vastleggen.
Om de PhantomJS-browser met Selenium WebDriver te gebruiken, moeten we GhostDriver gebruiken en downloaden. Het is een implementatie van het WebDriver-draadprotocol in een eenvoudige JS voor PhantomJS-browser. Nu in de laatste release van PhantomJS hadden ze GhostDriver geïntegreerd met PhantomJS. We hoeven het dus nu niet apart te installeren.
Download het PhantomJs.exe-bestand van hier: PhantomJs
Om de PhantomJS uit te voeren, hebben we de PhantomJS-driver nodig. Download link: PhantomJS-stuurprogramma
En we moeten het eigenschappenbestand PhantomJs.binary.path instellen wanneer we het script uitvoeren.
Verwijs onderstaande code:
Uitvoer : https://www.facebook.com/
PASSED: verifyFacebookTitle
# 3) Mozilla Firefox-stuurprogramma
WebDriver uitvoeren in de Firefox-browser:
Voor het aanroepen van Firefox-stuurprogramma is het niet nodig om extra jar-bestanden te installeren of configureren. Het is de standaarddriver die Selenium WebDriver ondersteunt.
Raadpleeg onderstaande code voor uitvoering:
Uitvoer : Paginatitel komt overeen
GESLAAGD : Test_Gmail_Login
# 4) Google Chrome-stuurprogramma
WebDriver uitvoeren in de Chrome-browser:
Om Google Chrome Driver te bellen, downloadt u eerst het stuurprogramma en stelt u vervolgens de systeemeigenschap in met de onderstaande code:
Uitvoer : Welkom bij rediff.com
Rediff.com: Online winkelen, Rediffmail, Laatste India-nieuws, Zakelijk, Bollywood, Sport, Aandelen, Live cricketscore, Geld, Filmrecensies
GESLAAGD : Test_Rediff_Alert
Lees ook=> Selenium tutorial - Zoek elementen in Chrome- en IE-browsers
# 5) Internet Explorer-stuurprogramma
Hoe WebDriver in IE-browser uit te voeren:
hoe u de netwerkbeveiligingssleutel op Android kunt vinden
Download het stuurprogramma en stel een systeemeigenschap in om Internet Explorer Driver aan te roepen.
Verwijs onderstaande code:
Uitvoer : Google
GESLAAGD : ieDriver
# 6) Opera-stuurprogramma
Om Opera Driver te bellen, downloadt u het stuurprogramma en stelt u de systeemeigenschap in.
Verwijs onderstaande code:
Uitvoer : Account aanmaken
GESLAAGD : operaDriver
Lees ook TestNG-annotaties in selenium
Gevolgtrekking
In deze zelfstudie heb ik besproken hoe u stuurprogramma's voor verschillende browsers instelt en gebruikt.
We hebben gezien hoe HTML Unit Driver en PhantomJS Driver verschillen van andere veelgebruikte browsers. De reden hierachter is dat ze niet worden gebruikt voor algemeen browsen zoals Google Chrome en andere; in plaats daarvan werken ze intern en voeren ze onze commando's sneller uit omdat het geen GUI ondersteunt. We kunnen ook server-side scripting uitvoeren met PhantomJS.
Nu we hebben begrepen hoe we stuurprogramma's moeten instellen en ze in verschillende browsers kunnen laten werken, moeten we duidelijk zijn waarom we dit doen. Zoals jullie allemaal weten ondersteunt Selenium alleen webgebaseerde applicaties en om ze te openen hebben we een browser nodig.
Er zijn verschillende stuurprogramma's (hierboven besproken) beschikbaar om deze browsers te openen. Een WebDriver is een interface die alle abstracte methoden bevat die erin zijn gedefinieerd. Daarom noemen we deze methoden die in deze tutorial worden besproken om onze taken uit te voeren.
Laat het ons weten als je vragen / opmerkingen hebt over deze tutorial.
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)
- Gids voor het genereren van omvangrapporten in Selenium WebDriver
- GeckoDriver Selenium-zelfstudie: GeckoDriver gebruiken in Selenium-projecten