Selenium WebDriver is het belangrijkste onderdeel van Selenium Tool's Suite. De nieuwste release 'Selenium 2.0' is geïntegreerd met WebDriver API, die een eenvoudigere en beknoptere programmeerinterface biedt.
java booleaans
De volgende afbeelding geeft u een goed inzicht in Selenium-componenten en de testautomatiseringstools.
Selenium WebDriver werd voor het eerst geïntroduceerd als onderdeel van Selenium v2.0. De eerste versie van Selenium, dat wil zeggen Selenium v1, bestond alleen uit IDE, RC en Grid. Met de release van Selenium v3 is RC echter verouderd en verplaatst naar een verouderd pakket.
In WebDriver kunnen testscripts worden ontwikkeld met behulp van elk van de ondersteunde programmeertalen en kunnen ze rechtstreeks in de meeste moderne webbrowsers worden uitgevoerd. Talen die door WebDriver worden ondersteund, zijn onder meer C#, Java, Perl, PHP, Python en Ruby.
Voordat u de concepten van Selenium WebDriver leert, moet u goed bekend zijn met alle ondersteunde programmeertalen. Momenteel is de Selenium Web-driver het populairst bij Java en C#. Voor deze tutorial gebruiken we Selenium met Java. U kunt de onderstaande links raadplegen om zowel basis- als geavanceerde concepten van Java en C# te leren:
Java-zelfstudie: https://www.javatpoint.com/java-tutorial
C#-zelfstudie: https://www.javatpoint.com/c-sharp-tutorial
Selenium WebDriver presteert veel sneller in vergelijking met Selenium RC omdat het rechtstreekse oproepen naar de webbrowsers maakt. RC heeft daarentegen een RC-server nodig om met de browser te communiceren.
WebDriver heeft een ingebouwde implementatie van het Firefox-stuurprogramma (Gecko Driver). Voor andere browsers moet u hun browserspecifieke stuurprogramma's aansluiten om te communiceren en de test uit te voeren. De meest gebruikte WebDriver's zijn onder meer:
- Google Chrome-stuurprogramma
- Internet Explorer-stuurprogramma
- Opera-chauffeur
- Safari-stuurprogramma
- HTML Unit Driver (een speciaal headless stuurprogramma)
Selenium WebDriver-architectuur
Selenium WebDriver API biedt communicatiefaciliteiten tussen talen en browsers.
De volgende afbeelding toont de architecturale weergave van Selenium WebDriver.
Er zijn vier basiscomponenten van WebDriver Architecture:
- Selenium-taalbindingen
- JSON-draadprotocol
- Browserstuurprogramma's
- Echte browsers
Selenium-taalbindingen / Selenium-clientbibliotheken
Selenium-ontwikkelaars hebben taalbindingen/Selenium Client Libraries gebouwd om meerdere talen te ondersteunen. Als u bijvoorbeeld het browserstuurprogramma in Java wilt gebruiken, gebruikt u de Java-bindingen. Alle ondersteunde taalbindingen kunnen worden gedownload van de officiële website (https://www.seleniumhq.org/download/#client-drivers) van Selenium.
JSON-draadprotocol
JSON (JavaScript Object Notation) is een open standaard voor het uitwisselen van gegevens op internet. Het ondersteunt datastructuren zoals object en array. Het is dus eenvoudig om gegevens uit JSON te schrijven en te lezen. Ga voor meer informatie over JSON naar https://www.javatpoint.com/json-tutorial
JSON Wire Protocol biedt een transportmechanisme om gegevens over te dragen tussen een server en een client. JSON Wire Protocol dient als industriestandaard voor verschillende REST-webservices. Ga voor meer informatie over webservices naar https://www.javatpoint.com/web-services-tutorial
Browserstuurprogramma's
Selenium gebruikt stuurprogramma's die specifiek zijn voor elke browser om een veilige verbinding met de browser tot stand te brengen zonder de interne logica van de functionaliteit van de browser prijs te geven. Het browserstuurprogramma is ook specifiek voor de taal die wordt gebruikt voor automatisering, zoals Java, C#, enz.
Wanneer we een testscript uitvoeren met WebDriver, worden de volgende bewerkingen intern uitgevoerd.
- Voor elke Selenium-opdracht wordt een HTTP-verzoek gegenereerd en naar het browserstuurprogramma verzonden.
- Het stuurprogramma ontvangt het HTTP-verzoek via de HTTP-server.
- HTTP Server beslist over alle stappen om instructies uit te voeren die in de browser worden uitgevoerd.
- De uitvoeringsstatus wordt teruggestuurd naar de HTTP-server, die vervolgens wordt teruggestuurd naar het automatiseringsscript.
Browsers
Browsers ondersteund door Selenium WebDriver:
- Internet Explorer
- Mozilla Firefox
- Google Chrome
- Safari
Selenium WebDriver-functies
Enkele van de belangrijkste kenmerken van Selenium WebDriver zijn:
WebDriver-stuurprogramma = nieuwe FirefoxDriver(); (Firefox-browser)
WebDriver-stuurprogramma = nieuwe ChromeDriver(); (Chrome-browser)
WebDriver-stuurprogramma = nieuwe InternetExplorerDriver(); (Internet Explorer-browser)
Met WebDriver kunnen testers ook omgaan met complexe soorten webelementen, zoals selectievakjes, vervolgkeuzelijsten en waarschuwingen via dynamische vinders.
Selenium WebDriver-zelfstudie-index
Selenium WebDriver-zelfstudie
- Selenium WebDriver-zelfstudie
- WebDriver versus RC
- WebDriver-installatie
- WebDriver eerste testcase
- WebDriver-opdrachten
- Test uitvoeren in Chrome
- Test uitvoeren op Firefox
- Test uitvoeren op IE
- Test uitvoeren in Safari
- Strategieën lokaliseren
- Strategieën lokaliseren op ID
- Strategieën op naam lokaliseren
- Strategieën lokaliseren op klassenaam
- Strategieën lokaliseren op tagnaam
- Strategieën lokaliseren via linktekst
- Strategieën lokaliseren op basis van gedeeltelijke linktekst
- Strategieën lokaliseren via CSS
- Strategieën lokaliseren door XPath
- Afhandeling van drop-downs
- WebDriver-slepen en neerzetten
- WebDriver-afhandelingswaarschuwingen
- Door een webpagina scrollen
- WebDriver - Browseropdrachten
- WebDriver - Navigatieopdrachten
- WebDriver - WebElement-opdrachten
- Omgaan met keuzerondjes
- Afhandeling van selectievakje
- Selenium beweringen
- Selenium-raster