Document toolboxDocument toolbox

(9.6-ja_JP) REST API

このドキュメントでは、製品独自の操作をプログラム的に行うための synapseRT の一般利用可能な REST API の一覧を示します。

テスト計画リソース

 テスト計画にテスト ケースを追加する

POST /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/addMembers

REQUEST

{
	"testCaseKeys":["FRS-1","FRS-2","FRS-3"]
}

 RESPONSE

 STATUS 200 テスト ケースがテスト計画に正常に追加された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト計画レベルからテストを割り当てる

PUT /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/assignTesterToTestCase

"memberId" を取得するには、"GET /rest/synapse/latest/public/testPlan/{testplanIssueKey}/members" を実行し、その応答から "id" 値を調べます。

REQUEST

{
	"memberId":1215,"userName":"cma"
}

 RESPONSE

{
  "data": "Cheney Ma"
}

 STATUS 200 テスト ケースが指定のテスターに正常に割り当てられた場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト計画にテスト サイクルを追加する

POST /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/addCycle

サポートされている日付形式は yyyy-mm-dd です。

REQUEST

{
  "name":"REST API Cycle 1",
  "environment":"Firefox",
  "build":"build 1.0"
  "plannedStartDate":"2017-04-13",
  "plannedEndDate":"2017-04-15"
}

RESPONSE

 STATUS 200 テスト サイクルがテスト計画に正常に追加された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト計画でテスト サイクルを取得する

GET /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/cycles

EXAMPLE

[
  {
    "id": 151,
    "name": "Round 1 with Chrome",
    "environment": "Chrome",
    "status": "Active",
    "deleteable": false,
    "aborted": false,
    "active": true,
    "build": "8.4",
    "draft": false,
    "plannedStartDate": "2016-11-03",
    "plannedEndDate": "2016-11-03",
    "cycleStartedDate": "2016-11-03T15:55:48.883+0800"
  },
  {
    "id": 152,
    "name": "Round 2 with Firefox",
    "environment": "Firefox 47",
    "status": "Active",
    "deleteable": false,
    "aborted": false,
    "active": true,
    "build": "8.4",
    "draft": false,
    "plannedStartDate": "2016-11-04",
    "plannedEndDate": "2016-11-04",
    "cycleStartedDate": "2016-11-03T16:10:38.695+0800"
  }
]

 RESPONSE

 STATUS 200 テスト サイクルが正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト計画でテスト ケースを取得する

GET /rest/synapse/latest/public/testPlan/{testplanIssueKey}/members

EXAMPLE

[
  {
    "id": 1215,
    "testCaseSummary": "Valid the bank name",
    "tcId": 15713,
    "tpId": 15802,
    "testCaseKey": "FRS-14",
    "testPlanKey": "FRS-31"
  },
  {
    "id": 1216,
    "testCaseSummary": "Return error if name is not correct",
    "tcId": 15714,
    "tpId": 15802,
    "testCaseKey": "FRS-15",
    "testPlanKey": "FRS-31"
  }
]

 RESPONSE

 STATUS 200 テスト計画からテスト ケースが正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト計画でテスト実行情報を取得する

GET /rest/synapse/latest/public/testPlan/{testplanIssueKey}/testPlanInformation

EXAMPLE

{
    "testCycles": [
        {
            "testCycleId": 151,
            "testCycleName": "Round 1 with Chrome",
            "notifyTester": false
        },
        {
            "testCycleId": 152,
            "testCycleName": "Round 2 with Firefox",
            "notifyTester": false
        }
    ],
    "cycleWithRuns": {
        "Round 1 with Chrome": [
            {
                "executedBy": "cma",
                "testRunSteps": [
                    {
                        "id": 15203,
                        "status": "Passed",
                        "step": "<p>Login 'FRS' system valid u/p.</p>",
                        "actualResult": "",
                        "stepData": "",
                        "stepRaw": "Login 'FRS' system valid u/p.",
                        "expectedResultRaw": "User logged in successfully.",
                        "expectedResult": "<p>User logged in successfully.</p>"
                    },
                    {
                        "id": 15204,
                        "status": "Passed",
                        "step": "<p>Choose any ticket and click on 'Purchase' button.</p>",
                        "actualResult": "",
                        "stepData": "",
                        "stepRaw": "Choose any ticket and click on 'Purchase' button.",
                        "expectedResultRaw": "It redirects to 'Purchase' page.",
                        "expectedResult": "<p>It redirects to 'Purchase' page.</p>"
                    },
                    {
                        "id": 15205,
                        "status": "Passed",
                        "step": "<p>Specify a valid bank from which the card was issued in 'Bank Name' textbox.</p>",
                        "actualResult": "",
                        "stepData": "",
                        "stepRaw": "Specify a valid bank from which the card was issued in 'Bank Name' textbox.",
                        "expectedResultRaw": "",
                        "expectedResult": ""
                    },
                    {
                        "id": 15206,
                        "status": "Passed",
                        "step": "<p>Click 'Validation' button.</p>",
                        "actualResult": "",
                        "stepData": "",
                        "stepRaw": "Click 'Validation' button.",
                        "expectedResultRaw": "A confirmation message 'Bank Validation Passed' pops up.",
                        "expectedResult": "<p>A confirmation message 'Bank Validation Passed' pops up.</p>"
                    },
                    {
                        "id": 15207,
                        "status": "Passed",
                        "step": "<p>Specify an invalid bank in 'Bank Name' textbox.</p>",
                        "actualResult": "",
                        "stepData": "",
                        "stepRaw": "Specify an invalid bank in 'Bank Name' textbox.",
                        "expectedResultRaw": "",
                        "expectedResult": ""
                    },
                    {
                        "id": 15208,
                        "status": "Passed",
                        "step": "<p>Click 'Validation' button.</p>",
                        "actualResult": "",
                        "stepData": "",
                        "stepRaw": "Click 'Validation' button.",
                        "expectedResultRaw": "An error message 'Bank Name is not valid!' pops up.",
                        "expectedResult": "<p>An error message 'Bank Name is not valid!' pops up.</p>"
                    }
                ],
                "testRunHistory": [
                    {
                        "executorName": "cma",
                        "activity": "Passed",
                        "activityType": "Status",
                        "testRunId": 3148,
                        "executionTime": 1478161145190
                    }
                ],
                "id": 3148,
                "type": 0,
                "comment": "",
                "status": "Passed",
                "commentWiki": "",
                "lozenge": "aui-lozenge aui-lozenge-success",
                "testCaseKey": "FRS-14",
                "summary": "Valid the bank name",
                "testerName": "cma",
                "executedByFromRun": "cma",
                "executionTimeStamp": "2016-11-03T16:19:05.190+0800",
                "executedByDisplayName": "Cheney Ma",
                "testCaseId": 15713,
                "changeInfo": "null|null",
                "executionOn": 1478161145190
            }
		]
	}
}

 RESPONSE

 STATUS 200 テスト実行情報がテスト計画から正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト計画から報告された不具合を取得する

GET /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/defects

RESPONSE

[
  {
    "id": 16001,
    "key": "FRS-35",
    "summary": "REST API Defect Created for Test Run Step"
  },
  {
    "id": 15723,
    "key": "FRS-24",
    "summary": "System is down, testing is blocked."
  },
  {
    "id": 15725,
    "key": "FRS-26",
    "summary": "Error message is wrong after clicking 'Save' button."
  },
  {
    "id": 15803,
    "key": "FRS-32",
    "summary": "The dialog box should be improved."
  },
  {
    "id": 16000,
    "key": "FRS-34",
    "summary": "REST API Defect Created for Test Run"
  },
  {
    "id": 15722,
    "key": "FRS-23",
    "summary": "There is no error returned."
  }
]

 STATUS 200 不具合がテスト計画から正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

テスト サイクル リソース

 テスト サイクル レベルからテストを割り当てる

POST /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/bulkAssignUpdate

REQUEST

{
	"testCycleId":153,
	"testerName":"cma",
	"runIds":[3164,3165,3166],
	"notifyTester":false
}

 RESPONSE

{
  "message": "Success"
}

 STATUS 200 テスト実行が指定のテスターに正常に割り当てられた場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト サイクル ステータスを更新する

PUT /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/cycle/{cycleName}/wf/{action}

REQUEST

Valid actions are:
- Start
- Complete
- Abort
- Resume

 RESPONSE

 STATUS 200 テスト サイクル ステータスが正常に更新された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト サイクル ID でテスト サイクル情報を更新する

POST /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/editCycle

"Test Cycle ID" を取得するには、"GET /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/cycles" を実行し、その応答から "id" 値を調べます。

REQUEST

{
  "id": 152,
  "name":"Round 2 with Firefox_Update",
  "environment":"Firefox 47_Update",
  "build":"8.4_Update",
  "plannedStartDate":"2017-04-13",
  "plannedEndDate":"2017-04-15"
}

 RESPONSE

 STATUS 200 テスト サイクル情報が正常に更新された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト サイクルでテスト実行を取得する

GET /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/cycle/{cycleName}/testRuns

EXAMPLE

[
    {
        "id": 3148,
        "comment": "",
        "executedBy": "cma",
        "status": "Passed",
        "executionTimeStamp": "03/Nov/16 4:19 PM",
        "summary": "Valid the bank name",
        "testerName": "cma",
        "testCaseKey": "FRS-14"
    },
    {
        "id": 3149,
        "comment": "",
        "executedBy": "cma",
        "status": "Failed",
        "attachments": [
            {
                "fileName": "Performance_Manage_REQs_Loading_Issue.jpg",
                "id": 62,
                "mimeType": "image/jpeg"
            }
        ],
        "executionTimeStamp": "03/Nov/16 4:06 PM",
        "summary": "Return error if name is not correct",
        "testerName": "cma",
        "bugs": [
            {
                "id": 15722,
                "key": "FRS-23",
                "summary": "There is no error returned."
            }
        ],
        "testCaseKey": "FRS-15"
    }
]

 RESPONSE

 STATUS 200 テスト実行が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト サイクル ID でテスト サイクルでのテスト実行を取得する

GET /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/cycle/{cycleId}/testRunsByCycleId

EXAMPLE

[
    {
        "id": 3148,
        "comment": "",
        "executedBy": "cma",
        "status": "Passed",
        "executionTimeStamp": "03/Nov/16 4:19 PM",
        "summary": "Valid the bank name",
        "testerName": "cma",
        "testCaseKey": "FRS-14"
    },
    {
        "id": 3149,
        "comment": "",
        "executedBy": "cma",
        "status": "Failed",
        "attachments": [
            {
                "fileName": "Performance_Manage_REQs_Loading_Issue.jpg",
                "id": 62,
                "mimeType": "image/jpeg"
            }
        ],
        "executionTimeStamp": "03/Nov/16 4:06 PM",
        "summary": "Return error if name is not correct",
        "testerName": "cma",
        "bugs": [
            {
                "id": 15722,
                "key": "FRS-23",
                "summary": "There is no error returned."
            }
        ],
        "testCaseKey": "FRS-15"
    }
]

 RESPONSE

 STATUS 200 テスト実行が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースをテスト サイクルに追加/削除する (テスト計画でのリファレンス テスト ケース メンバーあり)

POST /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/addMembersToTestCycle

REQUEST

{ 
  "testCycleId":153, 
  "testCycleName":"Round 3 with IE", 
  "addTestCaseKeys":["SPA-320","SPA-330"], 
  "removeTestCaseKeys":["FRS-29","FRS-30"]
}

 RESPONSE

 STATUS 200 テスト ケースが正常に追加/削除された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト サイクルでテスト実行を並べ替える

PUT /rest/synapse/latest/public/testRun/reorderTestRun

REQUEST

{"testRunId":3169,"refTestRunId":3167}
  • これによりテスト実行 (runId 3169) はテスト実行 (runId 3167) のすぐ下に移動します。
  • テスト実行を上位に移動する必要がある場合は、refTestRunId を -1 にします。

 RESPONSE

 STATUS 200 テスト実行が正常に並べ替えられた場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testRunId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト サイクルから報告された不具合を取得する

GET /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/cycle/{cycleId}/defects

RESPONSE

[
  {
    "id": 16001,
    "key": "FRS-35",
    "summary": "REST API Defect Created for Test Run Step"
  },
  {
    "id": 15723,
    "key": "FRS-24",
    "summary": "System is down, testing is blocked."
  },
  {
    "id": 15803,
    "key": "FRS-32",
    "summary": "The dialog box should be improved."
  },
  {
    "id": 16000,
    "key": "FRS-34",
    "summary": "REST API Defect Created for Test Run"
  },
  {
    "id": 15722,
    "key": "FRS-23",
    "summary": "There is no error returned."
  }
]

 STATUS 200 テスト サイクルから不具合が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

テスト実行リソース

 テスト実行情報を取得する

GET /rest/synapse/latest/public/testRun/{runID}

runID には 'TR' のプレフィックスは含まれない点に注意してください。

EXAMPLE

{
    "id": 3148,
    "type": 0,
    "comment": "",
    "summary": "Valid the bank name",
    "estimate": "10m",
    "status": "Passed",
    "testerName": "cma",
    "testCaseId": 15713,
    "efforts": "5m",
    "testRunDetails": {
        "testRunSteps": [
            {
                "id": 15203,
                "status": "Passed",
                "expectedResult": "User logged in successfully.",
                "step": "Login 'FRS' system valid u/p.",
                "testRunStepAttachments": []
            },
            {
                "id": 15204,
                "status": "Passed",
                "expectedResult": "It redirects to 'Purchase' page.",
                "step": "Choose any ticket and click on 'Purchase' button.",
                "testRunStepAttachments": []
            },
            {
                "id": 15205,
                "status": "Passed",
                "expectedResult": "",
                "step": "Specify a valid bank from which the card was issued in 'Bank Name' textbox.",
                "testRunStepAttachments": []
            },
            {
                "id": 15206,
                "status": "Passed",
                "expectedResult": "A confirmation message 'Bank Validation Passed' pops up.",
                "step": "Click 'Validation' button.",
                "testRunStepAttachments": []
            },
            {
                "id": 15207,
                "status": "Passed",
                "expectedResult": "",
                "step": "Specify an invalid bank in 'Bank Name' textbox.",
                "testRunStepAttachments": []
            },
            {
                "id": 15208,
                "status": "Passed",
                "expectedResult": "An error message 'Bank Name is not valid!' pops up.",
                "step": "Click 'Validation' button.",
                "testRunStepAttachments": []
            }
        ],
        "testRunHistory": [
            {
                "executorName": "cma",
                "activity": "Passed",
                "activityType": "Status",
                "executionTime": 1478161145190,
                "testRunId": 3148
            }
        ],
        "nextRunId": 3149
    },
    "testCaseKey": "FRS-14",
    "lozenge": "aui-lozenge aui-lozenge-success"
}

 RESPONSE

 STATUS 200 テスト実行情報が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースの実行履歴を取得する

GET /rest/synapse/latest/public/testRun/{testCaseIssueKey}/testRuns

EXAMPLE

[
    {
        "type": 0,
        "id": 3116,
        "status": "Passed",
        "summary": "Valid the bank name",
        "testCaseKey": "FRS-14",
        "lozenge": "aui-lozenge aui-lozenge-success",
        "testPlanKey": "FRS-22",
        "executionOn": "01/Jul/16 11:01 AM",
        "testPlanSummary": "Functionality Testing in Sprint 16",
        "testerName": "Murali",
        "testCycleSummary": "Cycle - Chrome",
        "executedBy": "cma",
        "testCaseId": 15713,
        "testCycleId": 147,
        "testRunDetails": {
            "testRunSteps": [
                {
                    "id": 15081,
                    "step": "Login 'FRS' system valid u/p.",
                    "status": "Passed",
                    "expectedResult": "User logged in successfully.",
                    "testRunStepAttachments": []
                },
                {
                    "id": 15082,
                    "step": "Choose any ticket and click on 'Purchase' button.",
                    "status": "Passed",
                    "expectedResult": "It redirects to 'Purchase' page.",
                    "testRunStepAttachments": []
                },
                {
                    "id": 15083,
                    "step": "Specify a valid bank from which the card was issued in 'Bank Name' textbox.",
                    "status": "Passed",
                    "expectedResult": "",
                    "testRunStepAttachments": []
                },
                {
                    "id": 15084,
                    "step": "Click 'Validation' button.",
                    "status": "Passed",
                    "expectedResult": "A confirmation message 'Bank Validation Passed' pops up.",
                    "testRunStepAttachments": []
                },
                {
                    "id": 15085,
                    "step": "Specify an invalid bank in 'Bank Name' textbox.",
                    "status": "Passed",
                    "expectedResult": "",
                    "testRunStepAttachments": []
                },
                {
                    "id": 15086,
                    "step": "Click 'Validation' button.",
                    "status": "Passed",
                    "expectedResult": "An error message 'Bank Name is not valid!' pops up.",
                    "testRunStepAttachments": []
                }
            ],
            "testRunHistory": [
                {
                    "executionTime": 1467342064503,
                    "executorName": "cma",
                    "activity": "Passed",
                    "executorId": 10001,
                    "activityType": "Status",
                    "testRunId": 3116,
                    "executorFullName": "Cheney Ma"
                },
                {
                    "executionTime": 1467342064502,
                    "executorName": "cma",
                    "activity": "Passed",
                    "executorId": 10001,
                    "activityType": "Status",
                    "testRunId": 3116,
                    "executorFullName": "Cheney Ma"
                },
                {
                    "executionTime": 1467342064502,
                    "executorName": "cma",
                    "activity": "Passed",
                    "executorId": 10001,
                    "activityType": "Status",
                    "testRunId": 3116,
                    "executorFullName": "Cheney Ma"
                }
            ],
            "prevRunId": 3119,
            "nextRunId": 3117
        }
    },      
] 

 RESPONSE

 STATUS 200 テスト ケースの実行履歴が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行を更新する

POST /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/cycle/{cycleName}/updateTestRun

REQUEST

{
"testcaseKey":"FRS-14",
"result":"Passed",
"comment":"Updated through REST"
}

 RESPONSE

 STATUS 200 テスト実行が正常に更新された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行ステップ結果を更新する

POST /rest/synapse/latest/public/testRun/updateStep/

"runStepId" を取得するには、"GET /rest/synapse/latest/public/testRun/{runID}" を実行し、その応答から "testRunSteps id" 値を調べます。

REQUEST

{ 
  "runStepId":15366, "result":"Blocked", "actualResult":"This Test Step is failed.", "bugs":["FRS-23"]
}

 RESPONSE

 STATUS 200 テスト実行ステップ結果が正常に更新された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された runStepId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 runid でテスト実行結果を更新する

POST /rest/synapse/latest/public/testRun/update

REQUEST

{
	"runId":"3174", "result":"Failed", "comment":"Updated through REST API", "bugs":["FRS-24"]
}

 RESPONSE

 STATUS 200 テスト実行ステップ結果が正常に更新された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された runId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 複数のテスト実行のテスト結果を更新する

POST /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/bulkStatusUpdate

REQUEST

Valid 'status' are:
- Passed
- Failed
- Not Tested
- Blocked
- NA

 

{
	"testCycleId":153,
	"status":"Failed",
	"runIds":[3164,3165,3166]
}

 RESPONSE

 STATUS 200 テスト実行結果が正常に更新された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行にバグをリンクする

POST /rest/synapse/latest/public/testPlan/{testPlanIssueKey}/cycle/{cycleName}/linkBugToTestRun

REQUEST

{
"testcaseKey":"FRS-15",
"bugs":["FRS-23","FRS-24"]
}

 RESPONSE

 STATUS 200 バグがテスト実行に正常にリンクされた場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行に添付ファイルを追加する

POST /rest/synapse/latest/public/attachment/{runId}/testrun

runID には 'TR' のプレフィックスは含まれない点に注意してください。

サポートされているコンテンツの種類 : MULTIPART_FORM_DATA

 RESPONSE

 STATUS 200 添付ファイルがテスト実行に正常に追加された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された runId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行ステップに添付ファイルを追加する

POST /rest/synapse/latest/public/attachment/{runId}/testrun/step/{stepno}

runID には 'TR' のプレフィックスは含まれない点に注意してください。

サポートされているコンテンツの種類 : MULTIPART_FORM_DATA

 RESPONSE

 STATUS 200 添付ファイルがテスト実行ステップに正常に追加された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された runId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行から新しい不具合を作成する

POST /rest/synapse/latest/public/testRun/createRunBug

REQUEST

{
	"fields": 
	{
		"project":
		{"key": "FRS"},
		"summary": "REST API Defect Created for Test Run",
		"description": "This Defect is Created from a Test Run",
		"issuetype":
		{"name": "Defect"}
	},
	"runId":3149
}

 RESPONSE

{
  "id": 16000,
  "key": "FRS-34"
}

 STATUS 200 テスト実行から不具合が正常に作成された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された runId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行ステップから新しい不具合を作成する

POST /rest/synapse/latest/public/testRun/createRunStepBug

REQUEST

{
	"fields": 
	{
		"project":
		{"key": "FRS"},
		"summary": "REST API Defect Created for Test Run Step",
		"description": "This Defect is Created from a Test Run Step",
		"issuetype":
		{"name": "Defect"}
	},
	"runStepId":15176
}

 RESPONSE

{
  "id": 16001,
  "key": "FRS-35"
}

 STATUS 200 テスト実行ステップから不具合が正常に作成された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された runStepId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行から報告された不具合を取得する

GET /rest/synapse/latest/public/testRun/defects/runId

RESPONSE

[
  {
    "id": 16001,
    "key": "FRS-35",
    "summary": "REST API Defect Created for Test Run Step"
  },
  {
    "id": 15722,
    "key": "FRS-23",
    "summary": "There is no error returned."
  },
  {
    "id": 16000,
    "key": "FRS-34",
    "summary": "REST API Defect Created for Test Run"
  }
]

 STATUS 200 テスト実行から不具合が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された runId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行から添付ファイル情報を取得する

GET /rest/synapse/latest/public/attachment/{runId}/getAttachmentDetails

RESPONSE

[
  {
    "fileName": "Attachment1 - Attached in a Test Run Step.jpg",
    "mimeType": "image/jpeg",
    "id": 63,
    "filePath": "http://localhost:8848/plugins/servlet/downloadTRAttachment?attachmentId=63"
  },
  {
    "fileName": "Attachment2 - Attached in a Test Run.jpg",
    "mimeType": "image/jpeg",
    "id": 64,
    "filePath": "http://localhost:8848/plugins/servlet/downloadTRAttachment?attachmentId=64"
  }
]

 STATUS 200 テスト実行から添付ファイルが正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された runId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト実行から添付ファイルを削除する

DELETE /rest/synapse/latest/public/attachment/{runId}/deleteAttachment/{attachmentId}

RESPONSE

 STATUS 200 テスト実行から添付ファイルが正常に削除された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された runId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

テスト ケース リソース

 テスト ステップで新しいテスト ケースを作成する

POST: /rest/synapse/latest/public/testCase/create/createTestCase

REQUEST

{
  "fields": 
  {
    "project":
      {"key": "FRS"},
    "summary": "REST API Test Case 1",
    "description": "This Test Case Is Created from REST API",
    "issuetype":
      {"name": "Test Case"}
  },
  "testcasesteps":
  [
    {"step":"It is the first Test Step", "stepData": "It is Test Data for the first Test Step", "expectedResult":"It is the Expected Result for the first Test Step"},
    {"step":"It is the second Test Step", "stepData": "It is Test Data for the second Test Step", "expectedResult":"It is the Expected Result for the second Test Step"}
  ]
}

 RESPONSE

{
  "id": 16000,
  "key": "FRS-34"
}

 STATUS 200 テスト ケースが正常に作成された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された 'fields' が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト スイートで新しいテスト ケースを作成する

POST: /rest/synapse/latest/public/testSuite/createTestCase

  • 'testSuitePath' が存在しない場合は、API によって新しいテスト スイートが作成され、それにテスト ケースがリンクされます。
  • 'TestSuitePath' が存在する場合は、テスト ケースは直接そのテスト スイートにリンクされます。

REQUEST

{
  "fields": 
  {
    "project":
     {"key": "FRS"},
    "summary": "REST API Test Case with Test Suite",
    "description": "This Test Case Is Created from REST API",
    "issuetype":
     {"name": "Test Case"}
  },
  "testcasesteps":
  [
    {"step": "It is the first Test Step", "stepData": "It is Test Data for the first Test Step", "expectedResult": "It is the Expected Result for the first Test Step"},
    {"step": "It is the second Test Step", "stepData": "It is Test Data for the second Test Step", "expectedResult": "It is the Expected Result for the second Test Step"}
  ],
   "linkToTestSuite":
	{
		"testSuitePath": "ROOT Test Suite/Sub Test Suite",
    	"projectKey": "FRS"
	}
}

 RESPONSE

{
    "testSuitePath": "ROOT Test Suite/Sub Test Suite",
    "projectKey": "FRS",
    "testCaseKey": "FRS-146",
    "createdTestSuiteId": 281,
    "createdTestCase": {
        "id": 16282,
        "key": "FRS-146"
    }
}

 STATUS 200 テスト ケースが正常に作成された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト スイートに既存のテスト ケースをリンクする

POST: /rest/synapse/latest/public/testSuite/linkTestCase

  • 'testSuitePath' が存在しない場合は、API によって新しいテスト スイートが作成され、それにテスト ケースがリンクされます。
  • 'TestSuitePath' が存在する場合は、テスト ケースは直接そのテスト スイートにリンクされます。

REQUEST

{
	"testCaseKeys": ["FRS-14","FRS-15"],
	"testSuitePath": "ROOT Test Suite/Sub Test Suite",
	"projectKey": "FRS"
}

 RESPONSE

 STATUS 200 テスト ケースが指定のテスト スイートに正常にリンクされた場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースにテスト ステップを追加する

POST /rest/synapse/latest/public/testCase/{testCaseIssueKey}/addSteps

REQUEST

[
 { "step":"Step 1 added via REST API",
    "stepData": "It is step data A for testing",
    "expectedResult":"Expected Result 1 added via REST API" 
 },
 {   "step":"Step 2 added via REST API", 
  "stepData": "It is step data B for testing", 
  "expectedResult":"Expected Result 1 added via REST API" 
 }
]

 RESPONSE

[
  {
    "sequenceNumber": "8",
    "id": 1707,
    "step": "Step 1 added via REST API",
    "expectedResult": "Expected Result 1 added via REST API",
    "tcId": 15713,
    "stepData": "It is step data A for testing"
  },
  {
    "sequenceNumber": "9",
    "id": 1708,
    "step": "Step 2 added via REST API",
    "expectedResult": "Expected Result 1 added via REST API",
    "tcId": 15713,
    "stepData": "It is step data B for testing"
  }
]

 STATUS 200 テスト ステップがテスト ケースに正常に追加された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースからテスト ステップを取得する

GET /rest/synapse/latest/public/testCase/{testCaseIssueKey}/steps

EXAMPLE

[
  {
    "sequenceNumber": "1",
    "id": 1672,
    "step": "Login 'FRS' system valid u/p.",
    "expectedResult": "User logged in successfully.",
    "tcId": 15713
  },
  {
    "sequenceNumber": "2",
    "id": 1673,
    "step": "Choose any ticket and click on 'Purchase' button.",
    "expectedResult": "It redirects to 'Purchase' page.",
    "tcId": 15713
  }
]

 RESPONSE

 STATUS 200 テスト ステップがテスト ケースから正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースからリンクされたテスト スイートを取得する

GET /rest/synapse/latest/public/testCase/{testCaseIssueKey}/linkedTestSuites

EXAMPLE

{
    "summary": "Return error if name is not correct",
    "projectKey": "FRS",
    "testSuites": [
        "Flight Reservation System/Purchase Ticket/Credit Card Validation/Valid Card Owner"
    ]
}

 RESPONSE

 STATUS 200 リンクされたテスト スイート情報がテスト ケースから正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースからリンクされたテスト計画を取得する

GET /rest/synapse/latest/public/testCase/{testCaseIssueKey}/linkedTestPlans

EXAMPLE

{
    "summary": "Return error if name is not correct",
    "projectKey": "FRS",
    "testPlans": [
                {
            "testPlanKey": "FRS-31",
            "testPlanSummary": " Functionality Testing in Sprint 20",
            "testCycles": [
                {
                    "testCycleId": 151,
                    "testCycleName": "Round 1 with Chrome",
                    "notifyTester": false
                },
                {
                    "testCycleId": 152,
                    "testCycleName": "Round 2 with Firefox_Update",
                    "notifyTester": false
                },
                {
                    "testCycleId": 153,
                    "testCycleName": "Round 3 with IE",
                    "notifyTester": false
                },
                {
                    "testCycleId": 159,
                    "testCycleName": "REST API Cycle 1",
                    "notifyTester": false
                },
                {
                    "testCycleId": 162,
                    "testCycleName": "Round 1 with Chromea",
                    "notifyTester": false
                }
            ]
        },
        {
            "testPlanKey": "FRS-22",
            "testPlanSummary": "Functionality Testing in Sprint 16",
            "testCycles": [
                {
                    "testCycleId": 147,
                    "testCycleName": "Cycle - Chrome",
                    "notifyTester": false
                },
                {
                    "testCycleId": 148,
                    "testCycleName": "Cycle - Firefox",
                    "notifyTester": false
                },
                {
                    "testCycleId": 149,
                    "testCycleName": "Cycle - IE",
                    "notifyTester": false
                }
            ]
        }
    ]
}

 RESPONSE

 STATUS 200 リンクされたテスト計画情報がテスト ケースから正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースからテスト参照情報を取得する

GET /rest/synapse/latest/public/testCase/{testCaseIssueKey}/automationReference

EXAMPLE

{
    "summary": "FRS Smoke Testing - Automation Demo Test Case 1",
    "projectKey": "FRS",
    "automationReference": "com.pba.test.module2.TestCase1:VerifyJiraRalDefSync"
}

 RESPONSE

 STATUS 200 テスト参照情報がテスト ケースから正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 ID でテスト ケースからテスト ステップを更新する

PUT /rest/synapse/latest/public/testCase/{testCaseIssueKey}/updateStep

REQUEST

{"ID":"1704", "step":"Update Step X", "expectedResult":"Update Expected Result X", "stepData":"Update Test Data X"}

 RESPONSE

 STATUS 200 テスト ステップが正常に更新された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された ID が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 sequenceNumber でテスト ケースからテスト ステップを更新する

PUT /rest/synapse/latest/public/testCase/{testCaseIssueKey}/updateStep

REQUEST

{ "sequenceNumber":"1", "step":"Step 1", "expectedResult":"Result 1", "stepData":"Data 1" }

 RESPONSE

 STATUS 200 テスト ステップが正常に更新された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された sequenceNumber が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 ID でテスト ケースからテスト ステップを削除する

DELETE /rest/synapse/latest/public/testCase/{testCaseIssueKey}/deleteStep/{stepId}

 RESPONSE

 STATUS 200 テスト ステップが正常に削除された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された stepId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 sequenceNumber でテスト ケースからテスト ステップを削除する

DELETE /rest/synapse/latest/public/testCase/{testCaseIssueKey}/deleteStepBySequenceNo/{stepNo}

 RESPONSE

 STATUS 200 テスト ステップが正常に削除された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された stepNo が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースからリンク済み要件をすべて取得する

GET /rest/synapse/latest/public/testCase/{testCaseIssueKey}/linkedRequirements

 RESPONSE

[
  {
    "id": 15703,
    "key": "FRS-4",
    "summary": "Valid Card Owner"
  },
  {
    "id": 15701,
    "key": "FRS-2",
    "summary": "Credit Card Validation"
  },
  {
    "id": 15704,
    "key": "FRS-5",
    "summary": "Passenger Information Validation"
  }
]

 STATUS 200 リンクされた要件がテスト ケースから正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースから要件の関連付けを削除する

DELETE /rest/synapse/latest/public/testCase/{testCaseIssueKey}/deleteLinkedRequirements

REQUEST

{"requirementKeys":["FRS-3","FRS-4"]}

 RESPONSE

 STATUS 200 要件の関連付けが正常に削除された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースからアドホック テスト実行を作成する

PUT /rest/synapse/latest/public/testRun/adhoc/create/{testCaseIssueKey}

RESPONSE

{
  "id": 3176,
  "type": 0,
  "status": "Not Tested",
  "testCaseKey": "FRS-15",
  "lozenge": "aui-lozenge ",
  "summary": "Return error if name is not correct",
  "testRunDetails": {
    "prevRunId": 3175
  },
  "testerName": "cma",
  "testCaseId": 15714
}

 STATUS 200 テスト実行がテスト ケースから正常に作成された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースからアドホック テスト実行情報を取得する

GET /rest/synapse/latest/public/testRun/adhoc/getTestRuns/{testCaseIssueKey}

RESPONSE

[
  {
    "id": 3176,
    "type": 0,
    "status": "Not Tested",
    "testCaseKey": "FRS-15",
    "lozenge": "aui-lozenge ",
    "summary": "Return error if name is not correct",
    "testRunDetails": {
      "testRunSteps": [
        {
          "id": 15265,
          "status": "Not Tested",
          "step": "Login 'FRS' system valid u/p.",
          "testRunStepAttachments": [],
          "expectedResult": "User logged in successfully."
        },
        {
          "id": 15266,
          "status": "Not Tested",
          "step": "Choose any ticket and click on '*Purchase*' button.",
          "stepData": "",
          "testRunStepAttachments": [],
          "expectedResult": "It redirects to 'Purchase' page."
        },
        {
          "id": 15267,
          "status": "Not Tested",
          "step": "Specify your ID and Name in '{color:red}Passenger Name{color}' section.",
          "stepData": "",
          "testRunStepAttachments": [],
          "expectedResult": ""
        },
        {
          "id": 15268,
          "status": "Not Tested",
          "step": "Click 'Check' button. ",
          "testRunStepAttachments": [],
          "expectedResult": "It returns an error: 'Your ID and Name are inconsistent, please check again!'."
        },
        {
          "id": 15269,
          "status": "Not Tested",
          "step": "*Below is an inline image for Step 5:*\n !UG_AD11_Preference.jpg|thumbnail!",
          "stepData": "",
          "testRunStepAttachments": [],
          "expectedResult": "*Below is an inline image for Step 5:*\n !UG_AD10_Preference.jpg|thumbnail!"
        }
      ],
      "prevRunId": 3175
    },
    "testerName": "cma",
    "testCaseId": 15714
  },
  {
    "id": 3174,
    "type": 0,
    "status": "Passed",
    "testCaseKey": "FRS-15",
    "lozenge": "aui-lozenge aui-lozenge-success",
    "summary": "Return error if name is not correct",
    "testRunDetails": {
      "testRunSteps": [
        {
          "id": 15254,
          "status": "Passed",
          "step": "Login 'FRS' system valid u/p.",
          "testRunStepAttachments": [],
          "expectedResult": "User logged in successfully."
        },
        {
          "id": 15255,
          "status": "Passed",
          "step": "Choose any ticket and click on '*Purchase*' button.",
          "stepData": "",
          "testRunStepAttachments": [],
          "expectedResult": "It redirects to 'Purchase' page."
        },
        {
          "id": 15256,
          "status": "Passed",
          "step": "Specify your ID and Name in '{color:red}Passenger Name{color}' section.",
          "stepData": "",
          "testRunStepAttachments": [],
          "expectedResult": ""
        },
        {
          "id": 15257,
          "status": "Passed",
          "step": "Click 'Check' button. ",
          "testRunStepAttachments": [],
          "expectedResult": "It returns an error: 'Your ID and Name are inconsistent, please check again!'."
        },
        {
          "id": 15258,
          "status": "Passed",
          "step": "*Below is an inline image for Step 5:*\n !UG_AD11_Preference.jpg|thumbnail!",
          "stepData": "",
          "testRunStepAttachments": [],
          "expectedResult": "*Below is an inline image for Step 5:*\n !UG_AD10_Preference.jpg|thumbnail!"
        }
      ],
      "testRunHistory": [
        {
          "executorName": "cma",
          "testRunId": 3174,
          "activity": "Passed",
          "executionTime": 1492569650867,
          "activityType": "Status"
        }
      ],
      "prevRunId": 3173,
      "nextRunId": 3175
    },
    "testerName": "cma",
    "testCaseId": 15714
  }
]

 STATUS 200 アドホック テスト実行情報がテスト ケースから正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト ケースから報告された不具合を取得する

GET /rest/synapse/latest/public/testCase/{testCaseIssueKey}/getDefects

RESPONSE

[
  {
    "id": 15722,
    "key": "FRS-23",
    "summary": "There is no error returned."
  },
  {
    "id": 15725,
    "key": "FRS-26",
    "summary": "Error message is wrong after clicking 'Save' button."
  },
  {
    "id": 15900,
    "key": "FRS-33",
    "summary": "There is an error when open xxx page."
  }
]

 STATUS 200 不具合がテスト ケースから正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testCaseIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

要件リソース

 要件に子要件を追加する

POST /rest/synapse/latest/public/requirement/{requirementIssueKey}/addChildren

REQUEST

{"requirementKeys":["FRS-3","FRS-4"]}

 RESPONSE

 STATUS 200 子要件が要件に正常にリンクされた場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された requirementIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 要件から子要件をすべて取得する

GET /rest/synapse/latest/public/requirement/{requirementIssueKey}/getChildren

 RESPONSE

[
  {
    "id": 15701,
    "key": "FRS-2",
    "summary": "Credit Card Validation"
  },
  {
    "id": 15704,
    "key": "FRS-5",
    "summary": "Passenger Information Validation"
  },
  {
    "id": 15702,
    "key": "FRS-3",
    "summary": "Valid Bank"
  },
  {
    "id": 15703,
    "key": "FRS-4",
    "summary": "Valid Card Owner"
  },
  {
    "id": 15705,
    "key": "FRS-6",
    "summary": "Registered User"
  },
  {
    "id": 15706,
    "key": "FRS-7",
    "summary": "Not Registered User"
  }
]

 STATUS 200 子要件が要件から正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された requirementIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 要件から直下の子要件をすべて取得する

GET /rest/synapse/latest/public/requirement/{requirementIssueKey}/getOnlyImmediateChildren

 RESPONSE

[
  {
    "id": 15702,
    "key": "FRS-3",
    "summary": "Valid Bank"
  },
  {
    "id": 15703,
    "key": "FRS-4",
    "summary": "Valid Card Owner"
  }
]

 STATUS 200 直下の子要件が要件から正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された requirementIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 要件にテスト ケースをリンクする

POST /rest/synapse/latest/public/requirement/{requirementIssueKey}/linkTestCase

REQUEST

{
"testCaseKeys":["FRS-14","FRS-15"]
}

 RESPONSE

 STATUS 200 テスト ケースが要件に正常にリンクされた場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された requirementIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 要件からリンク済みテスト ケースを取得する

GET /rest/synapse/latest/public/requirement/{requirementIssueKey}/linkedTestCases

 EXAMPLE

[
  {
    "id": 15714,
    "key": "FRS-15",
    "summary": "Return error if name is not correct"
  },
  {
    "id": 15715,
    "key": "FRS-16",
    "summary": "Return  error if age is not correct"
  },
  {
    "id": 15716,
    "key": "FRS-17",
    "summary": "Return error if sex is not correct "
  }
]

 STATUS 200 リンクされたテスト ケースが要件から正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された requirementIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 要件からテスト ケースの関連付けを削除する

DELETE /rest/synapse/latest/public/requirement/{requirementIssueKey}/deleteLinkedTestCases

REQUEST

{ "testCaseKeys":["FRS-16","FRS-17"]}

 RESPONSE

 STATUS 200 テスト ケースの関連付けが正常に削除された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された requirementIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 要件から報告された不具合を取得する

GET /rest/synapse/latest/public/requirement/{requirementIssueKey}/getDefects

RESPONSE

[
  {
    "id": 15722,
    "key": "FRS-23",
    "summary": "There is no error returned."
  },
  {
    "id": 15723,
    "key": "FRS-24",
    "summary": "System is down, testing is blocked."
  },
  {
    "id": 15725,
    "key": "FRS-26",
    "summary": "Error message is wrong after clicking 'Save' button."
  },
  {
    "id": 15900,
    "key": "FRS-33",
    "summary": "There is an error when open xxx page."
  }
]

 STATUS 200 要件から不具合が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された requirementIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 プロジェクトから要件スイートの一覧を取得する

GET /rest/synapse/latest/public/requirement/{projectKey}/requirementSuites

RESPONSE

{
    "requirementSuites": [
        {
            "name": "v1.0 - In Progress",
            "id": 2,
            "projectId": 10800
        },
        {
            "name": "v2.0 - Backlog (Need Review)",
            "id": 3,
            "projectId": 10800
        },
        {
            "name": "933A3 REQ Suite1",
            "id": 4,
            "projectId": 10800
        }
    ],
    "requirements": [
        {
            "id": 16202,
            "key": "FRS-36",
            "summary": "v3.0 - Develop Feature C (TBD)"
        }
    ]
}

 STATUS 200 プロジェクトから要件スイートが正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された projectKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 要件スイート メンバー (サブ要件スイートと要件課題の両方) を取得する

GET /rest/synapse/latest/public/requirement/requriementSuite/{suiteId}

RESPONSE

{
    "requirementSuites": [],
    "id": 5,
    "name": "Sub Suite 1",
    "projectId": 10800,
    "requirements": [
        {
            "id": 16201,
            "key": "FRS-35",
            "summary": "v3.0 - Develop Feature B (TBD)"
        }
    ]
}

 STATUS 200 要件スイート メンバーがプロジェクトから正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された suiteId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 要件から要件スイート情報を取得する

GET /rest/synapse/latest/public/requirement/{requriementIssueKey)/linkedRequirementSuites

RESPONSE

{
    "requirementSuites": "933A3 REQ Suite1/Sub Suite 1",
    "summary": "v3.0 - Develop Feature A (TBD)",
    "projectKey": "FRS",
    "requirementHierarchy": "FRS-35->FRS-34"
}

 STATUS 200 プロジェクトから要件スイート情報が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された requirementIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

不具合リソース

 不具合からテスト実行情報を取得する

GET /rest/synapse/latest/public/testRun/getTestRunsForDefect/{defectIssueKey}

RESPONSE

[
  {
    "id": 3117,
    "type": 0,
    "status": "Failed",
    "testCaseKey": "FRS-15",
    "lozenge": "aui-lozenge aui-lozenge-error",
    "summary": "Return error if name is not correct",
    "testRunDetails": {
      "testRunSteps": [
        {
          "id": 15087,
          "status": "Passed",
          "step": "Login 'FRS' system valid u/p.",
          "testRunStepAttachments": [],
          "expectedResult": "User logged in successfully."
        },
        {
          "id": 15088,
          "status": "Passed",
          "step": "Choose any ticket and click on 'Purchase' button.",
          "testRunStepAttachments": [],
          "expectedResult": "It redirects to 'Purchase' page."
        },
        {
          "id": 15089,
          "status": "Passed",
          "step": "Specify your ID and Name in 'Passenger Name' section.",
          "testRunStepAttachments": [],
          "expectedResult": ""
        },
        {
          "id": 15090,
          "status": "Failed",
          "step": "Click 'Check' button. ",
          "testRunStepBugsWrapper": [
            {
              "id": 15722,
              "key": "FRS-23",
              "summary": "There is no error returned."
            }
          ],
          "testRunStepAttachments": [
            {
              "id": 60,
              "fileName": "Test_Case_View_Test_Suite_v8.1.jpg",
              "mimeType": "image/jpeg"
            }
          ],
          "expectedResult": "It returns an error: 'Your ID and Name are inconsistent, please check again!'."
        }
      ],
      "testRunHistory": [
        {
          "executorName": "cma",
          "testRunId": 3117,
          "activity": "Passed",
          "executionTime": 1467342070139,
          "activityType": "Status"
        },
        {
          "executorName": "cma",
          "testRunId": 3117,
          "activity": "Passed",
          "executionTime": 1467342070140,
          "activityType": "Status"
        },
        {
          "executorName": "cma",
          "testRunId": 3117,
          "activity": "Passed",
          "executionTime": 1467342070140,
          "activityType": "Status"
        },
        {
          "executorName": "cma",
          "testRunId": 3117,
          "activity": "Passed",
          "executionTime": 1467342070140,
          "activityType": "Status"
        },
        {
          "executorName": "cma",
          "testRunId": 3117,
          "activity": "Failed",
          "executionTime": 1467342073924,
          "activityType": "Status"
        },
        {
          "executorName": "cma",
          "testRunId": 3117,
          "activity": "Attached",
          "executionTime": 1467342100470,
          "activityType": "Issue"
        }
      ],
      "testRunBugs": [
        {
          "id": 15722,
          "key": "FRS-23",
          "summary": "There is no error returned."
        }
      ],
      "testRunAttachments": [],
      "prevRunId": 3120
    },
    "testerName": "cma",
    "testCaseId": 15714
  },
  {
    "id": 3149,
    "type": 0,
    "status": "Failed",
    "testCaseKey": "FRS-15",
    "lozenge": "aui-lozenge aui-lozenge-error",
    "summary": "Return error if name is not correct",
    "testRunDetails": {
      "testRunSteps": [
        {
          "id": 15173,
          "status": "Passed",
          "step": "Login 'FRS' system valid u/p.",
          "testRunStepAttachments": [],
          "expectedResult": "User logged in successfully."
        },
        {
          "id": 15174,
          "status": "Passed",
          "step": "Choose any ticket and click on '*Purchase*' button.",
          "stepData": "",
          "testRunStepAttachments": [],
          "expectedResult": "It redirects to 'Purchase' page."
        },
        {
          "id": 15175,
          "status": "Passed",
          "step": "Specify your ID and Name in '{color:red}Passenger Name{color}' section.",
          "stepData": "",
          "testRunStepAttachments": [],
          "expectedResult": ""
        },
        {
          "id": 15176,
          "status": "Failed",
          "step": "Click 'Check' button. ",
          "testRunStepBugsWrapper": [
            {
              "id": 15722,
              "key": "FRS-23",
              "summary": "There is no error returned."
            }
          ],
          "testRunStepAttachments": [
            {
              "id": 61,
              "fileName": "Performance_Manage_REQs_Loading_Issue.jpg",
              "mimeType": "image/jpeg"
            }
          ],
          "expectedResult": "It returns an error: 'Your ID and Name are inconsistent, please check again!'."
        },
        {
          "id": 15177,
          "status": "Passed",
          "step": "*Below is an inline image for Step 5:*\n!Image_for_DEMO_Purpose.png|thumbnail!",
          "stepData": "",
          "testRunStepAttachments": [],
          "expectedResult": "*Below is an inline image for Step 5:*\n!Image_for_DEMO_Purpose.png|thumbnail!"
        }
      ],
      "testRunHistory": [
        {
          "executorName": "cma",
          "testRunId": 3149,
          "activity": "Passed",
          "executionTime": 1478160384762,
          "activityType": "Status"
        },
        {
          "executorName": "cma",
          "testRunId": 3149,
          "activity": "Failed",
          "executionTime": 1478160387086,
          "activityType": "Status"
        },
        {
          "executorName": "cma",
          "testRunId": 3149,
          "activity": "+ FRS-23",
          "executionTime": 1478160401266,
          "activityType": "Issue"
        }
      ],
      "testRunBugs": [
        {
          "id": 15722,
          "key": "FRS-23",
          "summary": "There is no error returned."
        }
      ],
      "testRunAttachments": [
        {
          "id": 62,
          "fileName": "Performance_Manage_REQs_Loading_Issue.jpg",
          "mimeType": "image/jpeg"
        }
      ],
      "prevRunId": 3148,
      "nextRunId": 3150
    },
    "testerName": "cma",
    "testCaseId": 15714
  }
]

 STATUS 200 不具合からテスト実行情報が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された defectIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

その他のリソース

 指定したビルドで報告された不具合を取得する

GET /rest/synapse/latest/public/testPlan/defects/buildDefects/{buildName}

RESPONSE

[
  {
    "id": 15722,
    "key": "FRS-23",
    "summary": "There is no error returned."
  },
  {
    "id": 16000,
    "key": "FRS-34",
    "summary": "REST API Defect Created for Test Run"
  },
  {
    "id": 16001,
    "key": "FRS-35",
    "summary": "REST API Defect Created for Test Run Step"
  },
  {
    "id": 15723,
    "key": "FRS-24",
    "summary": "System is down, testing is blocked."
  },
  {
    "id": 15803,
    "key": "FRS-32",
    "summary": "The dialog box should be improved."
  },
  {
    "id": 15725,
    "key": "FRS-26",
    "summary": "Error message is wrong after clicking 'Save' button."
  }
]

 STATUS 200 ビルドから不具合が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された buildName が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 指定された環境で報告された不具合を取得する

GET /rest/synapse/latest/public/testPlan/defects/environmentDefects/{envName}

RESPONSE

[
  {
    "id": 15722,
    "key": "FRS-23",
    "summary": "There is no error returned."
  },
  {
    "id": 15723,
    "key": "FRS-24",
    "summary": "System is down, testing is blocked."
  },
  {
    "id": 15727,
    "key": "FRS-28",
    "summary": "Not able to input any data in 'Data' field."
  },
  {
    "id": 16000,
    "key": "FRS-34",
    "summary": "REST API Defect Created for Test Run"
  },
  {
    "id": 16001,
    "key": "FRS-35",
    "summary": "REST API Defect Created for Test Run Step"
  },
  {
    "id": 15803,
    "key": "FRS-32",
    "summary": "The dialog box should be improved."
  }
]

 STATUS 200 環境から不具合が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された envName が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト スイートを新規作成する

POST: /rest/synapse/latest/public/testSuite/createTestSuite

REQUEST

{
	"testSuitePath": "API Test Suite/Sub Test Suite",
    "projectKey": "FRS"
}

 RESPONSE

{
    "testSuitePath": "API Test Suite/Sub Test Suite",
    "projectKey": "FRS"
}

 STATUS 200 テスト スイートが正常に作成された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 プロジェクトからテスト スイートの一覧を取得する

GET /rest/synapse/latest/public/testSuite/{projectKey}/testSuites

RESPONSE

[
    {
        "name": "Flight Reservation System",
        "state": 1,
        "id": 217,
        "projectId": 10800,
        "nameEncoded": "Flight Reservation System"
    },
    {
        "name": "ROOT Test Suite1",
        "state": 1,
        "id": 233,
        "projectId": 10800,
        "nameEncoded": "ROOT Test Suite1"
    },
    {
        "name": "ROOT Test Suite 2",
        "state": 1,
        "id": 234,
        "projectId": 10800,
        "nameEncoded": "ROOT Test Suite 2"
    }
]

 STATUS 200 プロジェクトからテスト スイートの一覧が正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された projectKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト スイート メンバー (サブ テスト スイートとテスト ケース課題の両方) を取得する

GET /rest/synapse/latest/public/testSuite/testSuite/{suiteId}

RESPONSE

{
    "name": "Valid Bank",
    "state": 1,
    "id": 226,
    "projectId": 10800,
    "testSuiteMembers": [
        {
            "memberType": 0,
            "id": 812,
            "sequence": 0,
            "memberId": 15713,
            "testCaseIssue": {
                "id": 15713,
                "key": "FRS-14",
                "summary": "Valid the bank name"
            }
        }
    ],
    "nameEncoded": "Valid Bank"
}

 STATUS 200 プロジェクトからテスト スイート メンバーが正常に取得された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された suiteId が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。

 テスト サイクルに自動化ジョブを追加する

POST /rest/synapse/latest/public/testCycle/addAutomationJobToTestCycle

REQUEST

{
	"testPlanKey" : "FRS-31",
	"testCycleName" : "Round 2 with Firefox",
	"appName" : "Go2Group Jenkins Server",
	"jobKey" : "SRT QA/job/SRT QA Job 1",
	"testType" : "TESTNG" 
}

RESPONSE

 STATUS 200 テスト サイクルに自動化ジョブが正常に追加された場合に返されます。

 STATUS 403 ユーザーが操作を行う権限がないか有効なライセンスがない場合に返されます。

 STATUS 404 指定された testPlanIssueKey が見つからない場合に返されます。

 STATUS 500 入力データで検証エラーがある場合や不明な内部サーバー エラーがある場合に返されます。