ドライバーバイナリ
WebDriverプロトコルに基づく自動化を実行 するには、自動化コマンドを変換してブラウザで実行できるブラウザドライバーが必要です。
自動セットアップ
WebdriverIO v8.14
以降では、WebdriverIOがブラウザドライバーを自動的に処理するため、手動でダウンロードしてセットアップする必要はありません。テストしたいブラウザを指定するだけで、残りはWebdriverIOが行います。
自動化レベルのカスタマイズ
WebdriverIOには3つの自動化レベルがあります:
1. @puppeteer/browsersを使用してブラウザをダウンロードしインストールする。
capabilities設定でbrowserName
/browserVersion
の組み合わせを指定すると、マシンに既存のインストールがあるかどうかに関係なく、WebdriverIOはリクエストされた組み合わせをダウンロードしてインストールします。browserVersion
を省略すると、WebdriverIOは最初にlocate-appを使用して既存のインストールを見つけて使用しようとし、見つからない場合は現在の安定版ブラウザ リリースをダウンロードしてインストールします。browserVersion
の詳細については、こちらを参照してください。
自動ブラウザセットアップはMicrosoft Edgeをサポートしていません。現在、Chrome、Chromium、Firefoxのみがサポートされています。
WebdriverIOによって自動検出できない場所にブラウザがインストールされている場合は、ブラウザバイナリを指定することができます。これにより自動ダウンロードとインストールが無効になります。
{
capabilities: [
{
browserName: 'chrome', // または 'firefox' や 'chromium'
'goog:chromeOptions': { // または 'moz:firefoxOptions' や 'wdio:chromedriverOptions'
binary: '/path/to/chrome'
},
}
]
}
2. Chromedriver、Edgedriver、Geckodriverを使用してドライバーをダウンロードしインストールする。
設定でドライバーのbinaryが指定されていない限り、WebdriverIOは常にこれを行います:
{
capabilities: [
{
browserName: 'chrome', // または 'firefox'、'msedge'、'safari'、'chromium'
'wdio:chromedriverOptions': { // または 'wdio:geckodriverOptions'、'wdio:edgedriverOptions'
binary: '/path/to/chromedriver' // または 'geckodriver'、'msedgedriver'
}
}
]
}
WebdriverIOはSafariドライバーを自動的にダウンロードしま せん。それはすでにmacOSにインストールされているためです。
ブラウザのbinary
を指定して対応するドライバーのbinary
を省略したり、その逆をしたりすることは避けてください。binary
値の片方だけが指定されている場合、WebdriverIOはそれと互換性のあるブラウザ/ドライバーを使用またはダウンロードしようとします。ただし、一部のシナリオでは互換性のない組み合わせになる可能性があります。したがって、バージョンの非互換性による問題を避けるため、常に両方を指定することをお勧めします。
3. ドライバーの起動/停止。
デフォルトでは、WebdriverIOは未使用のポートを使用して自動的にドライバーを起動および停止します。以下の設定のいずれかを指定すると、この機能は無効になり、手動でドライバーを起動および停止する必要があります: