マルチステップ API テスト¶
マルチステップ API テストは、複数の API リクエストを連携して複雑なビジネスフローやユーザー操作パスをシミュレートする高度なモニタリングツールです。このテストでは、複数の API 接続の応答データを使用してテストを作成し、重要なビジネストランザクションの検証、エンドツーエンドのユーザージャーニーのシミュレーション、認証・認可のサポートを実現します。このテスト方式により、サービスの可用性とパフォーマンスを能動的に監視し、複雑なフローの正常な動作を確保し、問題発生時に迅速にアラートを発報できます。
作成¶
タスク > 作成 > マルチステップ API テスト をクリックします。
1. 基本情報¶
- API テストタスクの名前を定義します。
- 必要に応じて説明を入力します。
2. テストノードの選択¶
現在、Guance は全世界 14 か所のテストノードをカバーしています。中国地域または海外地域(商用プラン以上のユーザーのみ)の 1 つ以上のノードを選択して、サイトサービスの品質監視を迅速に開始できます。
3. テスト頻度の選択¶
API テストタスクの実行頻度を選択します。以下のオプションが利用可能です。
- 1 分(商用プラン以上のユーザーのみ)
- 5 分(商用プラン以上のユーザーのみ)
- 15 分(商用プラン以上のユーザーのみ)
- 30 分
- 1 時間
- 6 時間
- 12 時間
- 24 時間
システムが提供する上記の特定のオプションに加えて、カスタム crontab タスク を入力し、分、時、日、月、週などの周期で定時タスクの実行を設定することもできます。
4. リクエストステップの定義¶
最初のリクエストを作成 をクリックします。
名前¶
リクエストの名前を定義します。
リクエスト形式の定義¶
- リクエスト URL を定義します。
- 必要に応じて詳細設定を行います。
可用性判断¶
デフォルトモード¶
判断条件を追加して、API テスト結果の成功条件を定義するモードです。
複数の条件間では、「すべて」または「いずれか」を選択して AND または OR の論理関係を実現できます。
| タイプ | 演算子 |
|---|---|
| レスポンスボディ | 含む, 含まない, 等しい, 等しくない, 正規表現マッチ, 正規表現マッチしない |
| リクエストヘッダー | 含む, 含まない, 等しい, 等しくない, 正規表現マッチ, 正規表現マッチしない |
| レスポンス時間 | 未満 |
| ステータスコード | 等しい, 等しくない, 正規表現マッチ, 正規表現マッチしない |
スクリプトモード¶
マルチステップ API テストタスクでは、スクリプトモードで Pipeline スクリプトを作成することで、以下の機能を実現できます。
- 判断条件の設定:ビジネス要件に応じて、複雑な判断ロジックをカスタマイズします。単一条件または複数条件の組み合わせ判断をサポートします。
- 結果データの処理:API テスト結果に対して、データクレンジングや形式変換などのカスタム処理を実行します。
- フィールドの抽出と変数の定義:レスポンスから特定のフィールドを抽出し、それを変数として定義して、後続のステップで再利用できるようにします。
スクリプトモードは、レスポンスから特定のフィールドを抽出したり、複雑な条件判断を行ったりするニーズに柔軟に対応します。
例:
body = load_json(response["body"])
if body["code"] == 200 {
result["is_failed"] = false
vars["token"] = body["token"]
} else {
result["is_failed"] = true
result["error_message"] = body["message"]
}
上記のスクリプトでは、まず load_json を使用してレスポンス内容を JSON オブジェクトに解析し、次にレスポンスステータスコードが 200 であるかどうかを判断します。200 の場合は、レスポンス内容から token を抽出し、vars に保存して後続のリクエストで使用します。そうでない場合は、result の is_failed を true に設定し、error_message をレスポンス内容の message に設定します。
詳細については、カスタム API テストタスク を参照してください。
ローカル変数¶
現在のマルチステップ API テストタスクで定義されたローカル変数は、後続のリクエストステップで参照できます。
注意
変数を定義するには、事前にスクリプトで対応するフィールドを抽出する必要があります。
- 変数名を入力します。通常は大文字、数字、アンダースコアが使用可能で、重複は許可されません。
- 変数値を選択します。これはスクリプトモードで変数として定義されたフィールドです。
- 必要に応じて変数値を暗号化するかどうかを選択します。チェックを入れると、テスト結果で現在の変数値が非表示になります。
作成された変数は、左上の「変数」エリアに一覧表示されます。
リクエスト形式の定義 > 詳細設定 > リクエストヘッダーでローカル変数を参照できます。
図のように、ステップ 1 でローカル変数 {{DS_ID}}(値は dashboard_id)が定義されています。リクエスト 2 では、URL 内でこの変数を直接参照して値を取得できます。
これらの変数を管理するには、「ローカル変数設定」エリアの右側にあるボタンをクリックして、編集または削除を実行します。
注意
- ローカル変数を削除すると、現在のマルチステップ API テスト内でその変数を参照しているリクエストは、その変数を引き続き使用できなくなります。
- ローカル変数の名前を変更すると、元の名前を参照しているステップはその変数を認識できなくなります。
実行設定¶
「このステップが失敗した場合、次のステップを続行する」を選択すると、現在のステップが失敗した場合にエラーをスキップして、後続のステップを実行し続けます。
テスト¶
タスクステップの作成が完了したら、「テスト」ボタンをクリックしてテスト結果を迅速に検証できます。テストタスクは非同期で実行されます。実行が完了すると、システムは以下の情報を表示します。
- テストパフォーマンス:テストプロセス中のパフォーマンス指標を表示します。
- レスポンス詳細:問題のトラブルシューティングに役立つ、詳細なレスポンス内容を提供します。
- 変数:現在のタスク下のリクエストと URL に設定されている変数を確認できます。
最初のリクエストタスク以降のステップからテストを開始する場合、現在のタスクを直接テストすることも、最初のタスクからテストを開始することも選択できます。
テストが失敗した場合、未知の変数が存在する可能性があります。「最初のステップから現在のリクエストまでテスト」ボタンをクリックして、テストを再実行し、調査を行えます。
リクエストステップの作成を続ける¶
最初のステップの API テストタスクを作成した後、引き続き「HTTP リクエストを作成」または「待機ステップを作成」を実行できます。
注意
最大 10 個のステップ(HTTP リクエストと待機を含む)を作成できます。
待機ステップ¶
特定の時間待機してから次のステップを実行することを示します。待機時間は 1 秒、5 秒、15 秒、30 秒、1 分、2 分、または 3 分から選択できます。
タスクの管理¶
リクエストステップの作成が完了したら、「保存」をクリックします。
作成されたタスクは、以下の操作で管理できます。
- タスク左側のドラッグアイコンをクリックすると、呼び出しステップの順序を変更できます。
- タスク右側の をクリックすると、このステップのクローンまたは削除を選択できます。
- 「一括操作」をクリックすると、タスクの一括クローンまたは一括削除が可能です。
注意
リクエストステップをクローンする際、ローカル変数は一緒にクローンされません。








