logo

Selenium WebDriver

Selenium WebDriver ist die wichtigste Komponente der Suite von Selenium Tool. Die neueste Version „Selenium 2.0“ ist in die WebDriver-API integriert, die eine einfachere und übersichtlichere Programmierschnittstelle bietet.

CSS für fett

Das folgende Bild vermittelt Ihnen einen guten Überblick über Selenium-Komponenten und die Testautomatisierungstools.


Selenium WebDriver

Selenium WebDriver wurde erstmals als Teil von Selenium v2.0 eingeführt. Die ursprüngliche Version von Selenium, d. h. Selenium v1, bestand nur aus IDE, RC und Grid. Mit der Veröffentlichung von Selenium v3 wurde RC jedoch veraltet und in das Legacy-Paket verschoben.

In WebDriver können Testskripte mit jeder der unterstützten Programmiersprachen entwickelt und direkt in den meisten modernen Webbrowsern ausgeführt werden. Zu den von WebDriver unterstützten Sprachen gehören C#, Java, Perl, PHP, Python und Ruby.

Bevor Sie sich mit den Konzepten von Selenium WebDriver vertraut machen, sollten Sie sich mit den unterstützten Programmiersprachen gut auskennen. Derzeit ist der Selenium Web-Treiber bei Java und C# am beliebtesten. Für dieses Tutorial verwenden wir Selenium mit Java. Über die unten aufgeführten Links können Sie grundlegende und fortgeschrittene Konzepte von Java und C# erlernen:

Java-Tutorial: https://www.javatpoint.com/java-tutorial

C#-Tutorial: https://www.javatpoint.com/c-sharp-tutorial

Selenium WebDriver ist im Vergleich zu Selenium RC viel schneller, da es direkte Aufrufe an die Webbrowser durchführt. RC hingegen benötigt einen RC-Server, um mit dem Browser zu interagieren.

WebDriver verfügt über eine integrierte Implementierung des Firefox-Treibers (Gecko-Treiber). Bei anderen Browsern müssen Sie deren browserspezifische Treiber anschließen, um zu kommunizieren und den Test auszuführen. Zu den am häufigsten verwendeten WebDrivern gehören:

  • Google Chrome-Treiber
  • Internet Explorer-Treiber
  • Opera-Treiber
  • Safari-Treiber
  • HTML Unit Driver (ein spezieller Headless-Treiber)

Selenium WebDriver-Architektur

Die Selenium WebDriver API bietet Kommunikationsmöglichkeiten zwischen Sprachen und Browsern.

Das folgende Bild zeigt die Architekturdarstellung von Selenium WebDriver.


Selenium WebDriver-Architektur

Es gibt vier Grundkomponenten der WebDriver-Architektur:

  • Selenium-Sprachbindungen
  • JSON Wire Protocol
  • Browsertreiber
  • Echte Browser

Selenium-Sprachbindungen / Selenium-Clientbibliotheken

Selenium-Entwickler haben Sprachbindungen/Selenium-Clientbibliotheken erstellt, um mehrere Sprachen zu unterstützen. Wenn Sie beispielsweise den Browsertreiber in Java verwenden möchten, verwenden Sie die Java-Bindungen. Alle unterstützten Sprachbindungen können von der offiziellen Website heruntergeladen werden (https://www.seleniumhq.org/download/#client-drivers) von Selen.

JSON Wire Protocol

JSON (JavaScript Object Notation) ist ein offener Standard für den Datenaustausch im Web. Es unterstützt Datenstrukturen wie Objekt und Array. Daher ist es einfach, Daten aus JSON zu schreiben und zu lesen. Um mehr über JSON zu erfahren, besuchen Sie https://www.javatpoint.com/json-tutorial

Das JSON Wire Protocol bietet einen Transportmechanismus zum Übertragen von Daten zwischen einem Server und einem Client. Das JSON Wire Protocol dient als Industriestandard für verschiedene REST-Webdienste. Um mehr über Webdienste zu erfahren, besuchen Sie https://www.javatpoint.com/web-services-tutorial

Browsertreiber

Selenium verwendet für jeden Browser spezifische Treiber, um eine sichere Verbindung mit dem Browser herzustellen, ohne die interne Logik der Browser-Funktionalität preiszugeben. Der Browsertreiber ist auch spezifisch für die für die Automatisierung verwendete Sprache wie Java, C# usw.

Wenn wir ein Testskript mit WebDriver ausführen, werden die folgenden Vorgänge intern ausgeführt.

  • Für jeden Selenium-Befehl wird eine HTTP-Anfrage generiert und an den Browsertreiber gesendet.
  • Der Treiber empfängt die HTTP-Anfrage über den HTTP-Server.
  • Der HTTP-Server entscheidet über alle Schritte zur Ausführung von Anweisungen, die im Browser ausgeführt werden.
  • Der Ausführungsstatus wird an den HTTP-Server zurückgesendet, der anschließend an das Automatisierungsskript zurückgesendet wird.

Browser

Von Selenium WebDriver unterstützte Browser:

  • Internet Explorer
  • Mozilla Firefox
  • Google Chrome
  • Safari

Selenium WebDriver – Funktionen

Einige der wichtigsten Funktionen von Selenium WebDriver sind:

    Unterstützung mehrerer Browser: Selenium WebDriver unterstützt eine Vielzahl von Webbrowsern wie Firefox, Chrome, Internet Explorer, Opera und viele mehr. Es unterstützt auch einige der unkonventionellen oder seltenen Browser wie HTMLUnit.

Selenium WebDriver-Funktionen
    Unterstützung mehrerer Sprachen: WebDriver unterstützt auch die meisten häufig verwendeten Programmiersprachen wie Java, C#, JavaScript, PHP, Ruby, Pearl und Python. Somit kann der Benutzer je nach seinen Kompetenzen eine der unterstützten Programmiersprachen auswählen und mit der Erstellung der Testskripte beginnen.Geschwindigkeit: WebDriver ist im Vergleich zu anderen Tools der Selenium Suite schneller. Im Gegensatz zu RC ist kein Zwischenserver erforderlich, um mit dem Browser zu kommunizieren. Vielmehr kommuniziert das Tool direkt mit dem Browser.

Selenium WebDriver-Funktionen
    Einfache Befehle: Die meisten in Selenium WebDriver verwendeten Befehle sind einfach zu implementieren. Um beispielsweise einen Browser in WebDriver zu starten, werden die folgenden Befehle verwendet:
    WebDriver-Treiber = neuer FirefoxDriver(); (Firefox-Browser)
    WebDriver-Treiber = neuer ChromeDriver(); (Chrome-Browser)
    WebDriver-Treiber = neuer InternetExplorerDriver(); (Internet Explorer-Browser)WebDriver-Methoden und Klassen: WebDriver bietet mehrere Lösungen, um einige potenzielle Herausforderungen beim Automatisierungstest zu bewältigen.
    WebDriver ermöglicht es Testern auch, über dynamische Finder mit komplexen Arten von Webelementen wie Kontrollkästchen, Dropdowns und Warnungen umzugehen.

Selenium WebDriver-Funktionen

Selenium WebDriver Tutorial-Index


Selenium WebDriver-Tutorial

  • Ortungsstrategien
  • Auffinden von Strategien anhand der ID
  • Strategien nach Namen lokalisieren
  • Auffinden von Strategien anhand des Klassennamens
  • Auffinden von Strategien anhand des Tag-Namens
  • Auffinden von Strategien anhand des Linktexts
  • Auffinden von Strategien anhand teilweiser Linktexte
  • Auffinden von Strategien per CSS
  • Auffinden von Strategien mit XPath
  • Umgang mit Dropdowns
  • WebDriver-Drag and Drop
  • WebDriver-Behandlung von Warnungen
  • Scrollen einer Webseite
  • WebDriver – Browserbefehle
  • WebDriver – Navigationsbefehle
  • WebDriver – WebElement-Befehle
  • Umgang mit Optionsfeldern
  • Kontrollkästchen „Handhabung“.
  • Selen-Behauptungen
  • Selengitter