ネイティブモバイルアプリテストのデバッグ
概要
モバイルアプリテストのデバッグは、開発ツールが利用できないため、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コマンド/アサーションを渡します。