ネイティブモバイルアプリテストのデバッグ
概要
モバイルアプリテストのデバッグは、開発ツールが利用できないため、Webほど簡単ではありません。モバイルアプリテストをデバッグするには、Appiumインスペクターをセットアップしてテストセッションに接続する必要があります。
前提条件
テストのデバッグには、Appiumインスペクターをお勧めします。Appiumインスペクターをセットアップするには、こちらのガイドに従ってください。
Appiumインスペクターを使用したデバッグ
ステップ1
以下に示すように、テストスクリプトで.debug()
コマンドを使用して、エラーの直前にデバッグポイントを追加します。
test.js
app
.useXpath()
.click('//XCUIElementTypeSearchField[@name="Search Wikipedia"]')
.sendKeys('//XCUIElementTypeSearchField[@name="Search Wikipedia"]','browserstack')
.click('//XCUIElementTypeStaticText[@name="BrowserStack"]')
.debug()
ステップ2
Nightwatchテストセッションが作成されるように、テストを実行します。
ステップ3
Appiumインスペクターを開き、セッションを接続します。
Appium 1を使用している場合は、AppiumインスペクターがAppiumサーバーからアクティブなセッションを取得できるように、リモートパスフィールドに/wd/hubを追加します。
これで、テストセッションがデバッグ用にセットアップされました。
ステップ4
テストのセッションが接続されると、左側のペインで要素を選択して、App Source
ペインで強調表示し、Selected Element
ペインにすべての詳細と属性を表示できます。以下に示すように。
以下に示すように、`コマンド`タブでAppiumコマンドを実行することもできます。
ターミナルのデバッガーコンソールを使用したデバッグ
ステップ1
以下に示すように、テストスクリプトで.debug()
コマンドを使用して、エラーの直前にデバッグポイントを追加します。
test.js
app
.useXpath()
.click('//XCUIElementTypeSearchField[@name="Search Wikipedia"]')
.sendKeys('//XCUIElementTypeSearchField[@name="Search Wikipedia"]','browserstack')
.click('//XCUIElementTypeStaticText[@name="BrowserStack"]')
.debug()
ステップ2
Nightwatchテストセッションが作成されるように、テストを実行します。
ステップ3
ターミナルで開いているNightwatchデバッグコンソールに、Nightwatchコマンド/アサーションを渡します。