Selenium tests uitvoeren op Chrome
Google Chrome domineert momenteel het wereldwijde marktaandeel van webbrowsers. Het gebruiksgemak in combinatie met de vele handige functies maakt het breed populair onder gebruikers. Gezien het belang en het hoge gebruikersbereik, is het voor kwaliteitsingenieurs van cruciaal belang geworden om websites/webapplicaties te testen op de Chrome browser. Omdat Selenium cross-browser functionaliteit biedt waarmee gebruikers testcases kunnen uitvoeren op verschillende browsers, is Selenium met Chrome browser de primaire combinatie om elke webapplicatie te testen op het browserplatform. Chrome biedt een driver, die de verbinding tussen Selenium WebDriver & Google Chrome tot stand kan brengen en de Selenium test in de Chrome browser kan uitvoeren. Laten we de details en het gebruik van de Selenium ChromeDriver begrijpen om de geautomatiseerde test op de Chrome browser uit te voeren door de details onder de volgende secties te behandelen:
- Wat is Selenium ChromeDriver?
- Wat zijn de vereisten voor Selenium ChromeDriver?
- Hoe installeer je ChromeDriver op Windows?
- Hoe download je ChromeDriver op Windows?
- En hoe stel je ChromeDriver in op Windows?
- En hoe voer je Selenium-tests uit op Chrome Browser?
- Hoe installeer je ChromeDriver op macOS?
- Hoe download ik ChromeDriver op macOS?
- En hoe installeer ik ChromeDriver op macOS?
- Hoe installeer ik ChromeDriver met Homebrew?
Wat is Selenium ChromeDriver?
ChromeDriver is het communicatiemedium waarmee gebruikers hun Selenium-tests op de Chrome-browser kunnen uitvoeren. Het is een standalone server die het open-source Selenium WebDriver Chromium Protocol implementeert. De Selenium-tests communiceren met de ChromeDriver via het JsonWireProtocol, dat de Selenium-opdrachten vertaalt naar overeenkomstige acties in de Chrome-browser.
Het enige doel van de ChromeDriver is het starten van en communiceren met Google Chrome. Zonder ChromeDriver is het niet mogelijk om Selenium-tests uit te voeren op de Chrome-browser. Daarom is het een van de meest vitale voorwaarden voor het uitvoeren van tests op Chrome. Een ChromeDriver kan eenvoudig worden gebruikt door het object van de ChromeDriver te instantiëren, het toe te wijzen aan een WebDriver object, en dat object te gebruiken voor browser-gebaseerde acties.
Wat zijn de vereisten voor Selenium ChromeDriver?
Voordat we kunnen beginnen met het schrijven van Selenium tests of het instellen van ChromeDriver, zijn er een paar vereisten die we op ons systeem moeten hebben:
- Java JDK: We hebben JDK of Java Development Kit nodig voor het schrijven van java programma’s. Deze bevat JRE en andere ontwikkeltools, waaronder compiler en debugger. Omdat we onze selenium tests in java gaan schrijven, is het hebben van JDK een must. Je kunt meer informatie krijgen over JDK en de installatie gids lezen vanaf hier: Hoe installeer ik Java?
- Java IDE: IDE of Integrated Development Environment helpt bij het schrijven van Java programma’s. Het biedt veel verschillende functies voor gebruikers om hun programmeerbehoeften te verlichten. Voor deze tutorial gebruiken we Eclipse IDE, hoewel elke andere Java IDE ook goed werkt. Om meer te weten of hoe Eclipse te installeren, bezoek hier: Installeer Eclipse.
- Selenium WebDriver: Om Selenium-tests te ontwikkelen, hebben we Selenium WebDriver nodig. U kunt Selenium WebDriver downloaden van de officiële Selenium site, en u kunt leren hoe u Selenium configureert in de tutorial; Configureer Selenium WebDriver. Voor deze tutorial gebruiken we Selenium 4.
Hoe installeer ik ChromeDriver op Windows?
Nu we hebben geleerd wat ChromeDriver is en waarom, hebben we het nodig voor het uitvoeren van Selenium tests op de Chrome browser. Laten we een beetje verder gaan en leren hoe je ChromeDriver instelt met je Selenium Java project en je tests uitvoert op Chrome. Het eerste deel zal zijn om de ChromeDriver te downloaden. Laten we eens kijken hoe we hetzelfde kunnen doen op het Windows platform
Hoe download ik ChromeDriver op Windows?
oordat we de ChromeDriver kunnen downloaden, moeten we eerst de versie van de Chrome browser op uw systeem controleren. ChromeDriver is direct afhankelijk van de compatibiliteit met de Chrome-browser, dus u moet de compatibele versie van ChromeDriver downloaden. Volg de onderstaande stappen om een ChromeDriver te downloaden die compatibel is met de Chrome-browser op uw systeem:
1. Ten eerste klikt u om de Chrome-browserversie op uw computer te controleren op de drie puntjes rechtsboven in de browser
2. Ten tweede klikt u op Help in het menu.
3. Ten derde klikt u op Over Google Chrome in het submenu.
4. Nadat u op de optie “Over Google Chrome” hebt geklikt, wordt de volgende pagina geopend. Vervolgens krijgt u de gegevens over de Chrome-versie te zien, zoals in de onderstaande afbeelding:
Nu we dus de versie van de Chrome-browser hebben, kunnen we de compatibele ChromeDriver downloaden. Om het stuurprogramma te downloaden, gaat u naar de koppeling op de officiële website van ChromeDriver. Volg de onderstaande stappen om het uitvoerbare bestand ChromeDriver te downloaden:
1. Op de downloadpagina van ChromeDriver vindt u koppelingen voor verschillende versies van ChromeDriver. Download op basis van uw Chrome-browserversie de bijbehorende ChromeDriver, zoals aangegeven in de onderstaande afbeelding. Klik vervolgens op de ChromeDriver-versie die u moet downloaden. Aangezien onze Chrome-browserversie “84” is, downloaden we de bijbehorende ChromeDriver.
2. Als u vervolgens op de koppeling “ChromeDriver 84.0.4147.30” klikt, komt u op de indexpagina van de ChromeDriver. Hier krijgt u verschillende opties voor de ChromeDriver, afhankelijk van uw besturingssysteem. Bovendien kunt u voor het Windows-besturingssysteem de Win32-versie kiezen, zoals aangegeven in de onderstaande afbeelding. Ja, zelfs als u 64-bits Windows op uw systeem hebt geïnstalleerd, werkt de Win32-versie prima.
3. Zodra de download is voltooid, pakt u het zip-bestand uit en plaatst u de “chromedriver.exe” op de gewenste locatie op uw systeem.
Nu we de ChromeDriver hebben gedownload, openen we Eclipse en maken we een nieuw java-project aan. Bovendien voegen we alle selenium-afhankelijkheden aan het project toe. Om meer te weten te komen over het instellen van Selenium met Eclipse, kun je onze vorige tutorial over hetzelfde onderwerp bezoeken: Configureer Selenium WebDriver.
Als volgende stap moeten we de gedownloade ChromeDriver executable beschikbaar maken voor de Selenium tests. Laten we vervolgens eens kijken hoe we ChromeDriver kunnen instellen, zodat we het kunnen gebruiken in de Selenium testgevallen:
Hoe stel je ChromeDriver in op Windows?
Om ChromeDriver in te stellen en te configureren met Selenium, moet het ChromeDriver uitvoerbare bestand toegankelijk zijn in het testscript. Daarnaast kunnen Selenium tests toegang krijgen tot de ChromeDriver als deze op een van de volgende manieren is ingesteld:
- Setup ChromeDriver via Systeemeigenschappen in Omgevingsvariabelen.
- Setup ChromeDriver via Systeemeigenschappen in het testscript.
Laten we dit allemaal begrijpen en proberen onze testcode uit te voeren met Selenium 3 of Selenium 4.
Hoe stel je ChromeDriver in met behulp van systeemeigenschappen in omgevingsvariabelen?
Op het Windows-besturingssysteem is een van de manieren om variabelen op systeemniveau aan te geven het gebruik van omgevingsvariabelen. Gebruikers kunnen zowel omgevingsvariabelen op gebruikersniveau als systeemvariabelen definiëren. Bovendien is de variabele die hier wordt gedefinieerd toegankelijk voor alle programma’s die op het systeem draaien. We kunnen de omgevingsvariabelen gebruiken om het pad van de ChromeDriver in te stellen. Wanneer we dus een instantie van de WebDriver maken, zal deze automatisch het pad van de ChromeDriver detecteren aan de hand van de systeemvariabelen en kan deze hetzelfde gebruiken. Laten we vervolgens eens kijken naar de stappen waarmee we dat kunnen doen.
1. Eerst moeten we het pop-upvenster Omgevingsvariabelen openen. Om dat te doen, klik op de zoekbalk en zoek naar “Omgevingsvariabelen”. Het zal zoeken en weergeven “Bewerk omgevingsvariabelen voor uw account”, zoals weergegeven in de afbeelding hieronder. Klik daarna op “Openen” om het pop-upvenster Systeemeigenschappen te openen.
2. Vervolgens wordt het pop-upvenster “Systeemeigenschappen” geopend. Selecteer in het pop-upvenster het tabblad “Geavanceerd”, zoals aangegeven met de pijl. Klik daarna in het tabblad Geavanceerd op de knop “Omgevingsvariabelen”.
3. Ten derde wordt nu de pop-up “Omgevingsvariabelen” geopend. Zoek in de pop-up Systeemvariabelen naar de variabele “pad”, zoals aangegeven in de onderstaande afbeelding. Klik daarna op de pad variabele om deze te selecteren. Klik na selectie op de knop “Bewerken”, zoals aangegeven door de pijl.
4. Zodra de pop-up “Omgevingsvariabele bewerken” verschijnt, klikt u op de knop “Nieuw”.
5. Ten vijfde voegt u de maplocatie van de ChromeDriver toe aan het pad. Wij hebben onze driver op de volgende locatie geplaatst: “C:\Seleniumchromedriver”, dus we hebben dezelfde toegevoegd als de padvariabele. Als u klaar bent, klikt u op de knop “OK”, zoals aangegeven door de pijl.
Hoe voert u Selenium-tests uit op de Chrome-browser met ChromeDriver?
Conclusief kunnen we nu de WebDriver-instantie direct initialiseren met behulp van de ChromeDriver, zoals hieronder wordt weergegeven:
Als u de bovenstaande code uitvoert, ziet u de onderstaande resultaten.
Uit de console-resultaten blijkt duidelijk dat er geen WebDriver-fout optreedt, wat betekent dat de WebDriver correct is ingesteld. Bovendien kunt u de afdrukstatements zien als de begin- en eindpunten van onze uitvoering.
Hoe initialiseer ik ChromeDriver met behulp van systeemeigenschappen in het Selenium testscript?
In plaats van de globale instantie van ChromeDriver te gebruiken, kunnen we, als we een specifieke versie van ChromeDriver willen gebruiken, dit ook doen door het pad van de ChromeDriver expliciet op te geven in het testscript zelf. Met andere woorden, we moeten een enkele regel code toevoegen om de systeemeigenschappen voor de ChromeDriver in te stellen, zoals hieronder wordt weergegeven:
1System.setProperty(“webdriver.chrome.driver”, “<Path of the ChromeDriver Executable>”);Concluderend, laten we de code die we hierboven hebben gebruikt aanpassen en zien dat we de Chrome-browser met succes kunnen starten. De gewijzigde code ziet er als volgt uit:
U zult zien dat demoqa.com wordt geopend in de Chrome-browser zonder enige fout of uitzondering.
Als u hebt gemerkt dat we hier ChromeDriver versie 85 hebben gebruikt, in plaats van de standaard wereldwijde ChromerDriver-versie van 84. De uitvoeringslogboeken geven aan dat onze WebDriver-sessie is begonnen met de afdrukopdracht die helemaal aan het begin wordt weergegeven. De rood gemarkeerde regels zijn enkele browserlogs die overeenkomen met de browsersessie. Bovendien kunt u zien dat de browser op uw systeem wordt geopend, en dat na het openen van de website de browsersessie wordt afgesloten.
Hoe installeert u ChromeDriver op macOS?
De installatie en setup van ChromeDriver op macOS is bijna hetzelfde als die van het Windows-platform. Het enige verschil is dat het uitvoerbare bestand voor macOS anders zal zijn, en de manier waarop we het ChromeDriver-bestand kunnen opnemen in de PATH-variabele van het systeem is een beetje anders. Laten we eens kijken hoe we de ChromeDriver op macOS kunnen installeren en instellen :
Hoe ChromeDriver downloaden op macOS?
Op macOS kunnen we ChromeDriver op een van de volgende manieren downloaden:
- Het uitvoerbare bestand downloaden van de Chromium-website
- Downloaden met behulp van een pakketbeheerder, zoals Homebrew.
Laten we de details van deze twee manieren om ChromeDriver te downloaden en in te stellen op macOS eens bekijken :
Hoe downloadt u ChromeDriver voor macOS van de Chromium-website?
U kunt de ChromerDriver voor macOS op dezelfde manier downloaden als we voor het Windows-platform hebben gedaan, met dit verschil dat u nu de binary voor het macOS-platform selecteert, zoals hieronder wordt weergegeven:
Hiermee wordt een zip-bestand gedownload, dat u kunt uitpakken in een map naar keuze. Na het uitpakken wordt het uitvoerbare bestand van ChromeDriver weergegeven, zoals hieronder te zien is:
Dus nu hebt u het uitvoerbare bestand van ChromeDriver op uw computer staan, dat we in onze testscripts kunnen gebruiken. Laten we vervolgens eens kijken hoe u ChromeDriver op macOS instelt en in de Selenium-testscripts gebruikt:
Hoe stelt u ChromeDriver in op macOS?
Nu u de ChromeDriver hebt gedownload, is de volgende stap om deze in te stellen en in uw testscripts te gebruiken. Ook op macOS kunnen we dezelfde manieren volgen als op Windows om de ChromeDriver in te stellen:
- Stel ChromeDriver in via de PATH-variabele van het systeem.
- Stel ChromeDriver in via Systeemeigenschappen in het testscript.
Het tweede punt is dezelfde opzet als voor het Windows platform, omdat we JAVA gebruiken voor de testontwikkeling, en omdat JAVA platform-onafhankelijk is, zal het zich op alle platforms hetzelfde gedragen. Laten we eens kijken hoe we de ChromerDriver kunnen instellen met behulp van de PATH-variabele van het systeem:
Hoe stel je ChromeDriver in met behulp van de PATH-variabele van het systeem?
Zoals we hierboven al zeiden, is een van de eenvoudigste manieren om het uitvoerbare bestand wereldwijd beschikbaar te maken op macOS, door het uitvoerbare bestand te kopiëren naar de mappen die al in de PATH-variabele staan. Laten we de onderstaande stappen volgen om hetzelfde te bereiken:
- Stel eerst de mappen vast die in de PATH-variabele staan met het commando ‘echo $PATH ‘ op de terminal. Het zal een voorbeeldoutput geven, zoals hieronder getoond:
2. Ten tweede, zoals we kunnen zien, maken meerdere mappen al deel uit van de PATH-variabele. Stel dat we “/usr/local/bin” kiezen als plaatsaanduidende directory voor het ChromeDriver-uitvoerbare bestand.
3. Ten derde kopieert u het uitvoerbare bestand ChromeDriver van de gedownloade map naar de map “/usr/local/bin” met de opdracht mv, zoals hieronder wordt weergegeven:
1mv chromedriver /usr/local/bin/Nu is uw ChromeDriver klaar om te worden gebruikt in uw Selenium-testscripts. Daarom gaan we nu een eenvoudig programma schrijven en dit uitvoeren op het macOS-platform.
Als u hetzelfde programma uitvoert, ziet u de resultaten in uw consolevenster:
U ziet dat de uitvoering zonder enige fout is verlopen. Beide afdrukstatements worden weergegeven, wat aangeeft dat onze uitvoering geen enkele fout heeft opgelopen. Heb je gezien hoe eenvoudig het is om ChromeDriver-tests uit te voeren in macOS? In tegenstelling tot het Windows systeem, waar je het pad van je driver executable moet onthouden, maakt het plaatsen van de driver op een locatie in macOS ons leven zo makkelijk!
Hoe installeer ik ChromeDriver met Homebrew?
Homebrew is een van de pakketbeheerders die beschikbaar zijn op macOS, die alle binaries kan downloaden die zich als pakket bij Homebrew registreren. Gelukkig is ChromeDriver beschikbaar als een Homebrew-pakket, en kunnen we het downloaden en instellen met een eenvoudig commando zoals hieronder:
1brew cask install chromedriverWanneer we het bovenstaande commando uitvoeren, wordt de ChromeDriver gedownload en geïnstalleerd in de map “/usr/local/bin”, zoals blijkt uit de volgende uitvoer van het bovenstaande commando:
Zoals we kunnen zien, is de nieuwste stabiele versie van ChromeDriver gedownload en geïnstalleerd in de map “/usr/local/bin”, waardoor deze deel uitmaakt van de variabele PATH en toegankelijk is voor alle toepassingen op het systeem.
Dus op deze manier is ChromeDriver met een enkel commando op macOS geïnstalleerd en ingesteld. Andere pakketbeheerders, zoals NPM, bieden ook de mogelijkheid om ChromeDriver te installeren, wat kan worden onderzocht op basis van welke pakketbeheerder u op uw machine gebruikt.
Key Takeaways
- Chrome browser is een van de meest populaire browsers in termen van gebruikersaandeel. Bovendien gebruikt 2/3e van de webgebruikers het.
- Selenium’s cross-browser functionaliteit stelt gebruikers in staat om hun Selenium tests te configureren en uit te voeren met ChromeDriver om alle tests uit te voeren op de Chrome browser.
- Daarnaast is ChromeDriver een standalone server die interacteert met Selenium WebDriver om alle selenium tests uit te voeren op de Chrome browser.
- Meer, ChromeDriver biedt executable specifiek voor elk platform, zoals Windows, macOS, etc.., die kunnen worden gedownload en gebruikt voor de uitvoering van Selenium-tests op de Chrome-browser.