Zum Hauptinhalt springen

Browser Treiber

Um Automation basierend auf dem WebDriver-Protokoll auszuführen, benötigen Sie Browser-Treiber, die die Automatisierungsbefehle übersetzen und im Browser ausführen können.

Automatisierte Einrichtung

Mit WebdriverIO v8.14 und höher ist es nicht mehr nötig, Browser-Treiber manuell herunterzuladen und einzurichten, da dies von WebdriverIO übernommen wird. Sie müssen lediglich den Browser angeben, den Sie testen möchten, und WebdriverIO erledigt den Rest.

Anpassung des Automatisierungsgrads

WebdriverIO bietet drei Automatisierungsstufen:

1. Herunterladen und Installieren des Browsers mit @puppeteer/browsers.

Wenn Sie eine browserName/browserVersion-Kombination in der capabilities-Konfiguration angeben, wird WebdriverIO die angeforderte Kombination herunterladen und installieren, unabhängig davon, ob auf dem Gerät bereits eine Installation vorhanden ist. Wenn Sie browserVersion weglassen, versucht WebdriverIO zunächst, eine vorhandene Installation mit locate-app zu finden und zu verwenden. Andernfalls wird die aktuelle stabile Browser-Version heruntergeladen und installiert. Weitere Details zu browserVersion finden Sie hier.

caution

Die automatisierte Browser-Einrichtung unterstützt Microsoft Edge nicht. Derzeit werden nur Chrome, Chromium und Firefox unterstützt.

Wenn Sie eine Browser-Installation an einem Ort haben, der von WebdriverIO nicht automatisch erkannt werden kann, können Sie die Browser-Binary angeben, was den automatischen Download und die Installation deaktiviert.

{
capabilities: [
{
browserName: 'chrome', // or 'firefox' or 'chromium'
'goog:chromeOptions': { // or 'moz:firefoxOptions' or 'wdio:chromedriverOptions'
binary: '/path/to/chrome'
},
}
]
}

2. Herunterladen und Installieren des Treibers mit Chromedriver, Edgedriver oder Geckodriver.

WebdriverIO wird dies immer tun, es sei denn, der Treiber binary ist in der Konfiguration angegeben:

{
capabilities: [
{
browserName: 'chrome', // or 'firefox', 'msedge', 'safari', 'chromium'
'wdio:chromedriverOptions': { // or 'wdio:geckodriverOptions', 'wdio:edgedriverOptions'
binary: '/path/to/chromedriver' // or 'geckodriver', 'msedgedriver'
}
}
]
}
info

WebdriverIO lädt den Safari-Treiber nicht automatisch herunter, da er bereits auf macOS installiert ist.

caution

Vermeiden Sie es, eine binary für den Browser anzugeben und die entsprechende Treiber-binary wegzulassen oder umgekehrt. Wenn nur einer der binary-Werte angegeben wird, versucht WebdriverIO, einen damit kompatiblen Browser/Treiber zu verwenden oder herunterzuladen. In einigen Szenarien kann dies jedoch zu einer inkompatiblen Kombination führen. Daher wird empfohlen, immer beide anzugeben, um Probleme durch Versionsinkompatibilitäten zu vermeiden.

3. Starten/Stoppen des Treibers.

Standardmäßig startet und stoppt WebdriverIO den Treiber automatisch unter Verwendung eines beliebigen ungenutzten Ports. Die Angabe einer der folgenden Konfigurationen deaktiviert diese Funktion, was bedeutet, dass Sie den Treiber manuell starten und stoppen müssen:

Manuelle Einrichtung

Im Folgenden wird beschrieben, wie Sie jeden Treiber individuell einrichten können. Eine Liste mit allen Treibern finden Sie in der awesome-selenium README.

tip

Wenn Sie das Testen von mobilen und anderen UI-Plattformen einrichten möchten, werfen Sie einen Blick in unser Appium Setup -Guide.

Chromedriver

Um Chrome zu automatisieren, können Sie Chromedriver direkt auf der -Projektwebsite oder über das NPM-Paket herunterladen:

npm install -g chromedriver

Sie können dann den Treiber starten mit:

chromedriver --port=4444 --verbose

Geckodriver

Um Firefox zu automatisieren, laden Sie die neueste Version von geckodriver für Ihre Umgebung herunter und entpacken Sie sie in Ihr Projektverzeichnis:

npm install geckodriver

Hinweis: Andere geckodriver-Versionen sind hier verfügbar. Nach dem Herunterladen können Sie den Treiber starten mit:

/path/to/binary/geckodriver --port 4444

Edgedriver

Sie können den Treiber für Microsoft Edge auf der Projektwebsite oder als NPM-Paket herunterladen:

npm install -g edgedriver
edgedriver --version # gibt aus: Microsoft Edge WebDriver 115.0.1901.203 (a5a2b1779bcfe71f081bc9104cca968d420a89ac)

Safaridriver

Der Safari Treiber ist auf Ihrem MacOS vorinstalliert und kann direkt gestartet werden mit:

safaridriver -p 4444

Welcome! How can I help?

WebdriverIO AI Copilot