Zum Hauptinhalt springen

Treiber-Binärdateien

Um Automatisierung 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 notwendig, 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 Kombination aus browserName/browserVersion in der Capabilities-Konfiguration angeben, wird WebdriverIO die angeforderte Kombination herunterladen und installieren, unabhängig davon, ob bereits eine Installation auf dem Gerät 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.

Achtung

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-Binärdatei angeben, wodurch der automatische Download und die Installation deaktiviert werden.

{
capabilities: [
{
browserName: 'chrome', // oder 'firefox' oder 'chromium'
'goog:chromeOptions': { // oder 'moz:firefoxOptions' oder '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', // oder 'firefox', 'msedge', 'safari', 'chromium'
'wdio:chromedriverOptions': { // oder 'wdio:geckodriverOptions', 'wdio:edgedriverOptions'
binary: '/path/to/chromedriver' // oder 'geckodriver', 'msedgedriver'
}
}
]
}
Info

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

Achtung

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 ist, versucht WebdriverIO, einen 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. Wenn Sie eine der folgenden Konfigurationen angeben, wird diese Funktion deaktiviert, 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.

Tipp

Wenn Sie mobile und andere UI-Plattformen einrichten möchten, schauen Sie sich unseren Appium Setup-Leitfaden an.

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 es dann über folgenden Befehl starten:

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 Ihrem Projektverzeichnis:

npm install geckodriver

Hinweis: Andere geckodriver-Versionen sind hier verfügbar. Nach dem Download können Sie den Treiber über folgenden Befehl starten:

/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 # prints: Microsoft Edge WebDriver 115.0.1901.203 (a5a2b1779bcfe71f081bc9104cca968d420a89ac)

Safaridriver

Safaridriver ist auf Ihrem MacOS vorinstalliert und kann direkt über folgenden Befehl gestartet werden:

safaridriver -p 4444

Welcome! How can I help?

WebdriverIO AI Copilot