本文へスキップ

REPLインターフェース

v4.5.0では、WebdriverIOはREPLインターフェースを導入しました。これにより、フレームワークAPIの学習だけでなく、テストのデバッグと検査も容易になります。複数の方法で使用できます。

まず、CLIコマンドとして使用できます。npm install -g @wdio/cliをインストールして、コマンドラインからWebDriverセッションを起動します。例:

wdio repl chrome

これにより、REPLインターフェースで制御できるChromeブラウザが開きます。セッションを開始するには、ポート4444でブラウザドライバが実行されていることを確認してください。Sauce Labs(またはその他のクラウドベンダー)アカウントをお持ちの場合は、コマンドラインでクラウド上のブラウザを直接実行することもできます。

wdio repl chrome -u $SAUCE_USERNAME -k $SAUCE_ACCESS_KEY

ドライバが異なるポート(例:9515)で実行されている場合は、コマンドライン引数`--port`またはエイリアス`-p`で指定できます。

wdio repl chrome -u $SAUCE_USERNAME -k $SAUCE_ACCESS_KEY -p 9515

REPLは、webdriverIO設定ファイルのcapabilityからも実行できます。Wdioは、capabilitiesオブジェクト、またはmultiremote capabilityリストまたはオブジェクトをサポートしています。

設定ファイルがcapabilitiesオブジェクトを使用する場合は、設定ファイルへのパスを渡すだけです。multiremote capabilityの場合は、位置引数を使用してリストまたはmultiremoteから使用するcapabilityを指定します。注:リストの場合は、0から始まるインデックスを使用します。

capability配列を使用したWebdriverIO

wdio.conf.tsの例
export const config = {
// ...
capabilities:[{
browserName: 'chrome', // options: `chrome`, `edge`, `firefox`, `safari`, `chromium`
browserVersion: '27.0', // browser version
platformName: 'Windows 10' // OS platform
}]
}
wdio repl "./path/to/wdio.config.js" 0 -p 9515

multiremote capabilityオブジェクトを使用したWebdriverIO

wdio.conf.tsの例
export const config = {
// ...
capabilities: {
myChromeBrowser: {
capabilities: {
browserName: 'chrome'
}
},
myFirefoxBrowser: {
capabilities: {
browserName: 'firefox'
}
}
}
}
wdio repl "./path/to/wdio.config.js" "myChromeBrowser" -p 9515

または、Appiumを使用してローカルモバイルテストを実行する場合

wdio repl android

これにより、接続されたデバイス/エミュレータ/シミュレータでChrome/Safariセッションが開きます。セッションを開始するには、ポート4444でAppiumが実行されていることを確認してください。

wdio repl './path/to/your_app.apk'

これにより、接続されたデバイス/エミュレータ/シミュレータでAppセッションが開きます。セッションを開始するには、ポート4444でAppiumが実行されていることを確認してください。

iOSデバイスのcapabilitiesは引数で渡すことができます。

  • -v - platformVersion: Android/iOSプラットフォームのバージョン
  • -d - deviceName: モバイルデバイスの名前
  • -u - udid: 実デバイスのudid

使用方法

wdio repl ios --platformVersion 11.3 --deviceName 'iPhone 7' --udid 123432abc

REPLセッションで使用可能なオプション(wdio repl --helpを参照)を適用できます。

WebdriverIO REPL

REPLを使用するもう1つの方法は、テスト内でdebugコマンドを使用することです。これは、呼び出されるとブラウザを停止し、アプリケーション(例:開発ツール)にジャンプしたり、コマンドラインからブラウザを制御したりできるようにします。これは、特定のコマンドが期待どおりに動作しない場合に役立ちます。REPLを使用すると、コマンドを試して、最も確実に動作するコマンドを確認できます。

ようこそ!お手伝いできることはありますか?

WebdriverIO AI Copilot