APIテストが失敗した場合や予期しない結果が生じた場合に、問題を切り分けるためのステップについて説明します。
失敗したステップの調査
[テスト詳細] ページで失敗したステップをクリックすると、何が起きたか詳細な情報を得ることができます。
- 上部にレスポンスステータスが表示されます。
- [ASSERTIONS] タブには、失敗したアサーションが表示されます。
- [ERRORS] タブには、エラーが表示されます。
トラブルシューティングの手がかりとなるポイントには、以下のようなものがあります。
- このステップではどのような結果が期待されているか?
- このステップでは前のステップで生成された変数を使用しているか? もしそうであれば、前のステップでどのようなイベントが起きたか?
- APIのヘッダーやボディに必須フィールドはあるか?
JSONレスポンスボディからのアサーションや変数の割り当て時にステップが失敗する場合、APIテストエディターを開いて、JSONパスが正しいかどうかを確認します。
クラウド実行での変数の初期値と最終値を確認するには、[テスト詳細] ページで [すべて表示] をクリックします。
最後に成功したテストの特定
失敗したAPIテストが以前は成功していた場合、最後に成功したテストが参考になるかもしれません。個々のステップを調査して、2つの実行の間で異なる結果が生じた原因と思われる違いを特定します。
コンソールログ出力の追加
ステップで何が起きているかについて、詳細な情報が必要な場合は、デバッグのためにコンソールログ出力を追加できます。
ローカル実行とクラウド実行の実行の比較
APIテストの結果がローカル実行とクラウド実行で異なる場合は、mablがURLエンドポイントにアクセスできるかどうかを確認する必要があります。
パブリックインターネットからURLエンドポイントにアクセスできない場合、ネットワーク問題のトラブルシューティングと設定を行うための方法がいくつか考えられます。
- ローカル実行で失敗する場合: デスクトップアプリケーションでプロキシを設定する
- クラウド実行で失敗する場合: mablの静的IPアドレスをホワイトリストに登録するか、ファイアウォールで保護された環境用にmabl Linkを設定する
ワークスペースで、エンドポイントへのアクセスにmabl Linkを使用している場合は、次の手順を実行します。
- Link Agentがアクティブであることを確認する
-
[ワークスペース設定] > [ネットワーク]
にアクセスして、Link Agentがアクティブであることを確認します。
-
- Link Agentを使用するように環境が設定されていることを確認する
-
[テスト環境設定] > [アプリケーション]
にアクセスします。 - Link Agentを使用すべき[環境]の横にある鉛筆アイコンをクリックします。環境の設定を変更する
Edit environment
ページが表示されます。 -
Advanced
セクションで、Use link agent
ボックスがオンになっていることと、ドロップダウンでLink Agentが選択されていることを確認します。
-
プランの設定とアドホック実行の設定の比較
APIテストがアドホックのクラウド実行では成功するのに、プラン実行では失敗する場合、プランの設定とアドホック実行の設定を比較します。
プランの設定
テストがプラン実行の一部であった場合、そのプランは [プラン] 列の上部に表示されます。プラン名をクリックすると、プランの詳細を確認できます。
アドホック実行の設定
APIテストがアドホック実行された場合、[テスト詳細] ページの [プラン] 列に「Ad hoc run」と表示されます。[すべて表示] リンクをクリックすると、アドホック実行の設定が表示されます。
トラブルシューティングの手がかりとなるポイントには、以下のようなものがあります。
- テストはプラン内のDataTableに関連付けられているか? (この設定はアドホック実行と異なるか?)
- プラン実行ではアドホック実行と同じ
api.url
を利用しているか?
Postmanの結果との比較
コレクションがPostmanからインポートされたものである場合、その段階でテストが成功しているかどうかを確認します。成功している場合、Postmanの実行結果とmablの実行結果の間にどのような違いがあるかを確認します。