テスト結果に関する情報を取得したり、テスト結果を追加するには、次の API メソッドを使用します。
get_results
1 つのテストに対する結果のリストを返します。
GET index.php?/api/v2/get_results/{test_id}
パラメーター
名前 | タイプ | 必須 | 説明 |
---|---|---|---|
test_id | integer | true | テストの ID |
limit | integer | false | レスポンスに表示されるテスト結果数の上限 (デフォルトのレスポンス サイズは 250) (TestRail 6.7 以降が必要) |
offset | integer | false | レスポンスが開始する位置を示す数値 (TestRail 6.7 以降が必要)。 |
リクエスト フィルター
以下のフィルターを適用できます
名前 | タイプ | 説明 |
---|---|---|
defects_filter | string | 単一の欠陥 ID (例: TR-1, 4291, など) |
limit/offset | integer | 結果を :limit 個の結果だけに制限します。レコードをスキップするには :offset を使用します。 |
status_id | integer (list) | フィルタリングするステータス ID のカンマ区切りリスト。 |
# The latest 10 results for test with ID 1 and statuses 4 or 5 (Retest, Failed) GET index.php?/api/v2/get_results/1&status_id=4,5&limit=10
レスポンスの内容
{ "offset": 0, "limit": 250, "size": 250, "_links": { "next": "/api/v2/get_results/131071&limit=250&offset=250", "prev": null }, "results": [ { "assignedto_id": 1, "comment": "This test failed: ..", "created_by": 1, "created_on": 1393851801, "custom_step_results": [], "defects": "TR-1", "elapsed": "5m", "id": 1, "status_id": 5, "test_id": 1, "version": "1.0RC1" } ] }
レスポンスには次のシステム項目が常に含まれています。
名前 | タイプ | 説明 |
---|---|---|
assignedto_id | integer | テスト結果の担当者 (ユーザー) の ID |
comment | string | テスト結果のコメントまたはエラー メッセージ |
created_by | integer | テスト結果を作成したユーザーの ID |
created_on | timestamp | テスト結果が作成された日時 (UNIX タイムスタンプ) |
defects | string | テスト結果にリンクされている欠陥のカンマ区切りリスト |
elapsed | timespan | テストの実行に要した時間 (例: “1m” または “2m 30s”) |
id | integer | テスト結果の一意の ID |
status_id | integer | テスト結果のステータス (passed または failed など)。get_statuses も参照してください。 |
test_id | integer | テスト結果が所属するテストの ID |
version | string | テストが実行された (ビルド) バージョン |
depth
、display_order
および parent
フィールドによってテスト スイート内のセクションの階層が定義されます。ルート レベルにあるすべてのセクションの depth
フィールドは 0 であり、すべての子セクションの値は 1 以上です。そのため、depth
フィールドの値は、セクション階層内でのレベルに似ています。例として get_sections も参照してください。
レスポンス コード
ステータス コード | 説明 |
---|---|
200 | 成功。テスト結果がレスポンスの一部として返されます |
400 | 無効または不明なテスト |
403 | プロジェクトにアクセスできない |
429 | TestRail Cloud のみ – リクエストが多すぎます |
get_results_for_case
1 つの テスト ラン とテスト ケースの組み合わせに対する結果のリストを返します。
get_results との違いは、このメソッドはテスト ケースではなく テスト ランとテスト ケースの組み合わせを受け取ることです。TestRailでは、テストは テスト ランの一部であり、テスト ケースは関連するテスト スイートの一部です。そのため、新しい テスト ランを作成すると、TestRail は テスト ランのテスト スイートに含まれる各テスト ケースに対してテストを作成します。したがって、テストとは、テスト結果、コメント、およびテスト ステータスを持った、テスト ケースの「インスタンス」と考えることができます。テスト ケースとテストの違いの詳細については、TestRail の入門ガイドも参照してください。
GET index.php?/api/v2/get_results_for_case/{run_id}/{case_id}
パラメーター
名前 | タイプ | 必須 | 説明 |
---|---|---|---|
run_id | integer | true | テスト ランの ID |
case_id | integer | true | テスト ケースの ID |
リクエスト フィルター
以下のフィルターを適用できます
名前 | タイプ | 説明 |
---|---|---|
defects_filter | string | 単一の欠陥 ID (例: TR-1, 4291, など) |
limit | integer | レスポンスが返すテスト結果の数 (デフォルトのレスポンスのサイズは 250) (TestRail 6.7 以降が必要) |
offset | integer | テスト結果のカウントを開始する位置 (オフセット) (TestRail 6.7 以降が必要) |
status_id | integer (list) | フィルタリングするステータス ID のカンマ区切りリスト。 |
# All results for test run with ID 1 and test case with ID 2 GET index.php?/api/v2/get_results_for_case/1/2
レスポンスの内容
このメソッドは get_results と同じレスポンス フォーマットを使用します。
{ "offset": 0, "limit": 250, "size": 250, "_links": { "next": "/api/v2/get_results/131071&limit=250&offset=250", "prev": null }, "results": [ { "assignedto_id": 1, "comment": "This test failed: ..", "created_by": 1, "created_on": 1393851801, "custom_step_results": [], "defects": "TR-1", "elapsed": "5m", "id": 1, "status_id": 5, "test_id": 1, "version": "1.0RC1" } ] }
レスポンス コード
ステータス コード | 説明 |
---|---|
200 | 成功。テスト結果がレスポンスの一部として返されます |
400 | 無効または不明なテスト |
403 | プロジェクトにアクセスできない |
429 | TestRail Cloud のみ – リクエストが多すぎます |
get_results_for_run
1 つの テスト ランに対する結果のリストを返します。
GET index.php?/api/v2/get_results_for_run/{run_id}
パラメーター
名前 | タイプ | 必須 | 説明 |
---|---|---|---|
run_id | integer | true | テスト ランの ID |
このメソッドは、最大で 250 のエントリを含むレスポンス配列を返します。それ以上のエントリを取得するには、下のリクエスト フィルター セクションで説明されているオフセット フィルターを使用して追加のリクエストを行います。
リクエスト フィルター
以下のフィルターを適用できます。
名前 | タイプ | 説明 |
---|---|---|
created_after | timestamp | この日付以降に作成されたテスト結果のみを返す (UNIX タイムスタンプ) |
created_before | timestamp | この日付以前に作成されたテスト結果のみを返す (UNIX タイムスタンプ) |
created_by | integer (list) | フィルタリングする作成者 (ユーザー ID) のカンマ区切りリスト。 |
defects_filter | string | 単一の欠陥 ID (例: TR-1, 4291, など) |
limit | integer | レスポンスに表示されるテスト結果数の上限 (任意パラメーター。デフォルトのレスポンス サイズは 250) (TestRail 6.7 以降が必要) |
offset | integer | レスポンスが開始する位置を示す数値 (任意パラメーター) (TestRail 6.7 以降が必要)。 |
status_id | integer (list) | フィルタリングするステータス ID のカンマ区切りリスト。 |
# The latest 10 results for test run with ID 1 created by user 5 GET index.php?/api/v2/get_results_for_run/1&created_by=5&limit=10
レスポンスの内容
このメソッドは get_results と同じレスポンス フォーマットを使用します。
レスポンス コード
ステータス コード | 説明 |
---|---|
200 | 成功。テスト結果がレスポンスの一部として返されます |
400 | 無効または不明なテスト ラン |
403 | プロジェクトにアクセスできない |
429 | TestRail Cloud のみ – リクエストが多すぎます |
add_result
新しいテスト結果を追加したり、コメントを付けたり、テストを割り当てたりします。複数のテストに結果を追加する場合は、add_results を使用することをお勧めします。
POST index.php?/api/v2/add_result/{test_id}
パラメーター
名前 | タイプ | 必須 | 説明 |
---|---|---|---|
test_id | integer | true | テスト結果を追加するテストの ID |
リクエスト フィールド
以下の POST フィールドがサポートされています (システムフィールド)。
名前 | タイプ | 説明 |
---|---|---|
status_id | integer | テスト ステータスの ID。組み込みシステムのステータスには、次の ID があります。
get_statuses を使用すると、システム ステータスおよびカスタム ステータスの完全なリストを取得できます。 |
comment | string | テスト結果のコメント/説明 |
version | string | テストしたバージョンまたはビルド |
elapsed | timespan | テストの実行に要した時間 (例: “30s” または “1m 45s”) |
defects | string | テスト結果にリンクする欠陥のカンマ区切りリスト |
assignedto_id | integer | テスト を割り当てるユーザーの ID |
カスタム フィールドもサポートされています。システム名の頭に custom_
を付けて送信します。例:
{ .. "custom_comment": "This is a custom comment" .. }
以下のカスタム フィールドタイプがサポートされています。
名前 | タイプ | 説明 |
---|---|---|
Checkbox | boolean | オンの場合は true、オフの場合は false |
Date | string | TestRail および API ユーザー用に設定されたのと同じ形式の日付 (例 “07/08/2013”) |
Dropdown | integer | フィールド設定で設定されたドロップダウン値の ID |
Integer | integer | 有効な整数 |
Milestone | integer | カスタム フィールドのマイルストーンの ID |
Multi-select | array | フィールド設定で設定された ID の配列 |
Step Results | array | ステップの結果を指定するオブジェクトの配列。下の例も参照してください。 |
String | string | 最大 250 文字までの有効な文字列 |
Text | string | 長さの制限がない文字列 |
URL | string | URL の構文と一致する文字列 |
User | integer | カスタム フィールドのユーザーの ID |
リクエストの例
{ "status_id": 5, "comment": "This test failed", "elapsed": "15s", "defects": "TR-7", "version": "1.0 RC1 build 3724", "custom_step_results": [ { "content": "Step 1", "expected": "Expected Result 1", "actual": "Actual Result 1", "status_id": 1 }, { "content": "Step 2", "expected": "Expected Result 2", "actual": "Actual Result 2", "status_id": 2 } ] }
レスポンスの内容
成功した場合、このメソッドは、get_results と同じレスポンス形式を使用して、新しいテスト結果を返します。結果のリストではなく単一の結果を返します。
レスポンス コード
ステータス コード | 説明 |
---|---|
200 | 成功。テスト結果が作成され、レスポンスの一部として返されます |
400 | 無効または不明なテスト |
403 | テスト結果を追加する権限がない、またはプロジェクトへのアクセス権がない |
429 | TestRail Cloud のみ – リクエストが多すぎます |
add_result_for_case
新しいテスト結果を追加したり、コメントを付けたり、テストを割り当てたりします (対象はテスト ランとテスト ケースの組み合わせ)。複数のテスト ケースに結果を追加する場合は、add_results_for_cases を使用することをお勧めします。
add_result との違いは、このメソッドはテスト ケースではなく テスト ランとテスト ケースの組み合わせを受け取ることです。TestRailでは、テストは テスト ランの一部であり、テスト ケースは関連するテスト スイートの一部です。そのため、新しい テスト ランを作成すると、TestRail は テスト ランのテスト スイートに含まれる各テスト ケースに対してテストを作成します。したがって、テストとは、テスト結果、コメント、およびテスト ステータスを持った、テスト ケースの「インスタンス」と考えることができます。テスト ケースとテストの違いの詳細については、TestRail の入門ガイドも参照してください。
POST index.php?/api/v2/add_result_for_case/{run_id}/{case_id}
パラメーター
名前 | タイプ | 必須 | 説明 |
---|---|---|---|
run_id | integer | true | テスト ランの ID |
case_id | integer | true | テスト ケースの ID |
レスポンスの内容
レスポンス コード
ステータス コード | 説明 |
---|---|
200 | 成功。テスト結果が作成され、レスポンスの一部として返されます |
400 | 無効または不明なテスト ランまたはケース |
403 | テスト結果を追加する権限がない、またはプロジェクトへのアクセス権がない |
429 | TestRail Cloud のみ – リクエストが多すぎます |
add_results
1 つまたはそれ以上の新しいテスト結果を追加したり、コメントを付けたり、1 つまたはそれ以上のテストを割り当てます。1 ステップで複数のテスト結果をまとめて追加するテスト自動化に最適です。
POST index.php?/api/v2/add_results/{run_id}
パラメーター
名前 | タイプ | 必須 | 説明 |
---|---|---|---|
run_id | integer | true | テスト結果を追加するテスト ランの ID |
リクエストの例
{ "results": [ { "test_id": 101, "status_id": 5, "comment": "This test failed", "defects": "TR-7" }, { "test_id": 102, "status_id": 1, "comment": "This test passed", "elapsed": "5m", "version": "1.0 RC1" }, { "test_id": 101, "assignedto_id": 5, "comment": "Assigned this test to Joe" } ] }
レスポンスの内容
成功した場合、このメソッドは get_results と同じレスポンス形式を使用して、リクエストのリストと同じ順序で新しいテスト結果を返します。
レスポンス コード
ステータス コード | 説明 |
---|---|
200 | 成功。テスト結果が作成され、レスポンスの一部として返されます |
400 | 無効または不明なテスト ラン/テスト |
403 | テスト結果を追加する権限がない、またはプロジェクトへのアクセス権がない |
429 | TestRail Cloud のみ – リクエストが多すぎます |
add_results_for_cases
1 つまたはそれ以上の新しいテスト結果を追加したり、コメントを付けたり、1 つまたはそれ以上のテストを割り当てます (テスト ケース ID を使用)。1 ステップで複数のテスト結果をまとめて追加するテスト自動化に最適です。
POST index.php?/api/v2/add_results_for_cases/{run_id}
パラメーター
名前 | タイプ | 必須 | 説明 |
---|---|---|---|
run_id | integer | true | テスト結果を追加するテスト ランの ID |
リクエストの例
{ "results": [ { "case_id": 1, "status_id": 5, "comment": "This test failed", "defects": "TR-7" }, { "case_id": 2, "status_id": 1, "comment": "This test passed", "elapsed": "5m", "version": "1.0 RC1" }, { "case_id": 1, "assignedto_id": 5, "comment": "Assigned this test to Joe" } ] }
レスポンスの内容
成功した場合、このメソッドは、get_results と同じレスポンス形式を使用して、リクエストのリストと同じ順序で新しいテスト結果を返します。
[ { "assignedto_id": 1, "comment": "This test failed: ..", "created_by": 1, "created_on": 1393851801, "custom_step_results": [], "defects": "TR-1", "elapsed": "5m", "id": 1, "status_id": 5, "test_id": 1, "version": "1.0RC1" } ]
レスポンス コード
ステータス コード | 説明 |
---|---|
200 | 成功。テスト結果が作成され、レスポンスの一部として返されます |
400 | 無効または不明なテスト ラン/ケース |
403 | テスト結果を追加する権限がない、またはプロジェクトへのアクセス権がない |
429 | TestRail Cloud のみ – リクエストが多すぎます |