Test Plans - Create
建立測試計劃。
POST https://dev.azure.com/{organization}/{project}/_apis/testplan/plans?api-version=7.1
URI 參數
| 名稱 | 位於 | 必要 | 類型 | Description |
|---|---|---|---|---|
|
organization
|
path | True |
string |
Azure DevOps 組織的名稱。 |
|
project
|
path | True |
string |
項目識別碼或項目名稱 |
|
api-version
|
query | True |
string |
要使用的 API 版本。 這應該設定為 『7.1』 以使用此版本的 API。 |
要求本文
| 名稱 | 類型 | Description |
|---|---|---|
| areaPath |
string |
測試計劃的區域。 |
| buildDefinition |
產生與此測試計劃相關聯的組建定義。 |
|
| buildId |
integer (int32) |
要測試的組建。 |
| description |
string |
測試計劃的描述。 |
| endDate |
string (date-time) |
測試計劃的結束日期。 |
| iteration |
string |
測試計劃的反覆項目路徑。 |
| name |
string |
測試計劃的名稱。 |
| owner |
測試計劃的擁有者。 |
|
| releaseEnvironmentDefinition |
要用來從此測試計劃部署組建和執行自動化測試的版本環境。 |
|
| startDate |
string (date-time) |
測試計劃的開始日期。 |
| state |
string |
測試計劃的狀態。 |
| testOutcomeSettings |
在測試計劃下設定測試套件之間相同測試需要運作方式的值 |
回應
| 名稱 | 類型 | Description |
|---|---|---|
| 200 OK |
成功作業 |
安全性
oauth2
類型:
oauth2
Flow:
accessCode
授權 URL:
https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
權杖 URL:
https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer
範圍
| 名稱 | Description |
|---|---|
| vso.test_write | 授與讀取、建立和更新測試計劃、案例、結果和其他測試管理相關成品的能力。 |
範例
| Create a test plan with all details. |
| Create a test plan with name, area path and iteration. |
Create a test plan with all details.
範例要求
POST https://dev.azure.com/fabrikam/{project}/_apis/testplan/plans?api-version=7.1
{
"name": "newCreatedPlan2",
"areaPath": "sampleProject\\Team1",
"description": "description of the test plan",
"startDate": "2018-08-19T20:49:15.8884886+05:30",
"endDate": "2018-08-26T20:49:15.8884886+05:30",
"iteration": "sampleProject\\Iteration 2",
"owner": null,
"state": "Inactive",
"buildId": 3,
"buildDefinition": {
"id": 2,
"name": ""
},
"releaseEnvironmentDefinition": {
"definitionId": 1,
"environmentDefinitionId": 1
},
"testOutcomeSettings": {
"syncOutcomeAcrossSuites": true
}
}
範例回覆
{
"id": 31,
"project": {
"id": "afb62ab2-bd74-41c2-991e-40bbb9c8ca91",
"name": "sampleProject",
"state": "unchanged",
"visibility": "unchanged"
},
"updatedDate": "2018-08-17T15:19:16.993Z",
"updatedBy": {
"displayName": "Fabrikam Fiber",
"url": "https://vssps.dev.azure.com/fabrikam/Aea08ebc7-105f-4bb2-a36b-f92e0e9de65a/_apis/Identities/0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"_links": {
"avatar": {
"href": "https://dev.azure.com/fabrikam/_apis/GraphProfile/MemberAvatars/aad.MGZkYmRhZDgtNmFmYi03MTQ5LTlhZjktYzBhMjE2MTM3ZDFk"
}
},
"id": "0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"uniqueName": "fabrikamfiber1@microsoft.com",
"imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"descriptor": "aad.MGZkYmRhZDgtNmFmYi03MTQ5LTlhZjktYzBhMjE2MTM3ZDFk"
},
"rootSuite": {
"id": 32,
"name": "newCreatedPlan2",
"plan": {
"id": 31,
"name": "newCreatedPlan2"
}
},
"_links": {
"_self": {
"href": "https://dev.azure.com/fabrikam/fabrikam-fiber-tfvc/_apis/test/Plans/31"
},
"clientUrl": {
"href": "mtms://fabrikam.visualstudio.com:443/p:sampleProject/Testing/testplan/connect?id=31"
},
"rootSuite": {
"href": "https://dev.azure.com/fabrikam/fabrikam-fiber-tfvc/_apis/test/Plans/31/Suites/32"
},
"build": {
"href": "https://dev.azure.com/fabrikam/fabrikam-fiber-tfvc/_apis/build/Builds/3"
},
"buildDefinition": {
"href": "https://dev.azure.com/fabrikam/fabrikam-fiber-tfvc/_apis/build/Definitions/2"
}
},
"revision": 2,
"name": "newCreatedPlan2",
"areaPath": "sampleProject\\Team1",
"description": "description of the test plan",
"startDate": "2018-08-19T20:49:15.8884886+05:30",
"endDate": "2018-08-26T20:49:15.8884886+05:30",
"iteration": "sampleProject\\Iteration 2",
"owner": {
"displayName": "Fabrikam Fiber",
"url": "https://vssps.dev.azure.com/fabrikam/Aea08ebc7-105f-4bb2-a36b-f92e0e9de65a/_apis/Identities/0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"_links": {
"avatar": {
"href": "https://dev.azure.com/fabrikam/_apis/GraphProfile/MemberAvatars/aad.MGZkYmRhZDgtNmFmYi03MTQ5LTlhZjktYzBhMjE2MTM3ZDFk"
}
},
"id": "0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"uniqueName": "fabrikamfiber1@microsoft.com",
"imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"descriptor": "aad.MGZkYmRhZDgtNmFmYi03MTQ5LTlhZjktYzBhMjE2MTM3ZDFk"
},
"state": "Inactive",
"buildId": 3,
"buildDefinition": {
"id": 2,
"name": ""
},
"releaseEnvironmentDefinition": {
"definitionId": 1,
"environmentDefinitionId": 1
},
"testOutcomeSettings": {
"syncOutcomeAcrossSuites": true
}
}
Create a test plan with name, area path and iteration.
範例要求
POST https://dev.azure.com/fabrikam/{project}/_apis/testplan/plans?api-version=7.1
{
"name": "newCreatedPlan1",
"areaPath": "sampleProject\\Team1",
"iteration": "sampleProject\\Iteration 2",
"owner": null
}
範例回覆
{
"id": 29,
"project": {
"id": "afb62ab2-bd74-41c2-991e-40bbb9c8ca91",
"name": "sampleProject",
"state": "unchanged",
"visibility": "unchanged"
},
"updatedDate": "2018-08-17T15:19:13.967Z",
"updatedBy": {
"displayName": "Fabrikam Fiber",
"url": "https://vssps.dev.azure.com/fabrikam/Aea08ebc7-105f-4bb2-a36b-f92e0e9de65a/_apis/Identities/0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"_links": {
"avatar": {
"href": "https://dev.azure.com/fabrikam/_apis/GraphProfile/MemberAvatars/aad.MGZkYmRhZDgtNmFmYi03MTQ5LTlhZjktYzBhMjE2MTM3ZDFk"
}
},
"id": "0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"uniqueName": "fabrikamfiber1@microsoft.com",
"imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"descriptor": "aad.MGZkYmRhZDgtNmFmYi03MTQ5LTlhZjktYzBhMjE2MTM3ZDFk"
},
"rootSuite": {
"id": 30,
"name": "newCreatedPlan1",
"plan": {
"id": 29,
"name": "newCreatedPlan1"
}
},
"_links": {
"_self": {
"href": "https://dev.azure.com/fabrikam/fabrikam-fiber-tfvc/_apis/test/Plans/29"
},
"clientUrl": {
"href": "mtms://fabrikam.visualstudio.com:443/p:sampleProject/Testing/testplan/connect?id=29"
},
"rootSuite": {
"href": "https://dev.azure.com/fabrikam/fabrikam-fiber-tfvc/_apis/test/Plans/29/Suites/30"
}
},
"revision": 1,
"name": "newCreatedPlan1",
"areaPath": "sampleProject\\Team1",
"startDate": "2018-08-17T15:19:13.6734848Z",
"endDate": "2018-08-24T15:19:13.6734848Z",
"iteration": "sampleProject\\Iteration 2",
"owner": {
"displayName": "Fabrikam Fiber",
"url": "https://vssps.dev.azure.com/fabrikam/Aea08ebc7-105f-4bb2-a36b-f92e0e9de65a/_apis/Identities/0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"_links": {
"avatar": {
"href": "https://dev.azure.com/fabrikam/_apis/GraphProfile/MemberAvatars/aad.MGZkYmRhZDgtNmFmYi03MTQ5LTlhZjktYzBhMjE2MTM3ZDFk"
}
},
"id": "0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"uniqueName": "fabrikamfiber1@microsoft.com",
"imageUrl": "https://dev.azure.com/fabrikam/_api/_common/identityImage?id=0fdbdad8-6afb-6149-9af9-c0a216137d1d",
"descriptor": "aad.MGZkYmRhZDgtNmFmYi03MTQ5LTlhZjktYzBhMjE2MTM3ZDFk"
},
"state": "Active",
"testOutcomeSettings": {
"syncOutcomeAcrossSuites": false
}
}
定義
| 名稱 | Description |
|---|---|
|
Build |
組建定義參考資源 |
|
Identity |
|
|
Project |
項目狀態。 |
|
Project |
項目可見度。 |
|
Reference |
表示 REST 參考連結集合的類別。 |
|
Release |
發行環境資源的參考。 |
|
Team |
表示 TeamProject 的淺層參考。 |
|
Test |
測試結果設定 |
|
Test |
測試計劃資源。 |
|
Test |
測試計劃會建立參數。 |
|
Test |
測試套件參考資源。 |
BuildDefinitionReference
組建定義參考資源
| 名稱 | 類型 | Description |
|---|---|---|
| id |
integer (int32) |
組建定義的識別碼 |
| name |
string |
組建定義的名稱 |
IdentityRef
| 名稱 | 類型 | Description |
|---|---|---|
| _links |
此欄位包含圖表主旨的相關零或更多有趣連結。 您可以叫用這些連結,以取得此圖表主題的其他關聯性或更詳細的資訊。 |
|
| descriptor |
string |
描述元是在系統執行時參考圖表主旨的主要方式。 此欄位會唯一識別帳戶和組織之間的相同圖表主題。 |
| directoryAlias |
string |
已淘汰 - 查詢 IdentityRef “_links” 字典中參考的 Graph 使用者,即可擷取 |
| displayName |
string |
這是圖形主體的非唯一顯示名稱。 若要變更此欄位,您必須在來源提供者中變更其值。 |
| id |
string |
|
| imageUrl |
string |
已淘汰 - 可在 IdentityRef “_links” 字典的 “avatar” 專案中取得 |
| inactive |
boolean |
已淘汰 - 可藉由查詢 GraphUser “_links” 字典的 “membershipState” 專案中參考的 Graph 成員資格狀態來擷取 |
| isAadIdentity |
boolean |
已淘汰 - 可以從描述元的主體類型推斷 (Descriptor.IsAadUserType/Descriptor.IsAadGroupType) |
| isContainer |
boolean |
已淘汰 - 可以從描述元的主體類型推斷 (Descriptor.IsGroupType) |
| isDeletedInOrigin |
boolean |
|
| profileUrl |
string |
已淘汰 - 未在 ToIdentityRef 的大部分預先存在實作中使用 |
| uniqueName |
string |
已淘汰 - 請改用 Domain+PrincipalName |
| url |
string |
此 URL 是此圖表主體來源資源的完整路由。 |
ProjectState
項目狀態。
| 值 | Description |
|---|---|
| all |
所有專案,不論狀態為何,但已刪除除外。 |
| createPending |
Project 已排入佇列以建立,但程式尚未啟動。 |
| deleted |
項目已刪除。 |
| deleting |
Project 正在刪除。 |
| new |
Project 正在建立中。 |
| unchanged |
專案尚未變更。 |
| wellFormed |
專案已完全建立並可供使用。 |
ProjectVisibility
項目可見度。
| 值 | Description |
|---|---|
| private |
只有具有明確存取權的使用者才能看到專案。 |
| public |
所有專案都可以看到。 |
ReferenceLinks
表示 REST 參考連結集合的類別。
| 名稱 | 類型 | Description |
|---|---|---|
| links |
object |
連結的只讀檢視。 因為參考連結是只讀的,所以我們只想要將其公開為只讀。 |
ReleaseEnvironmentDefinitionReference
發行環境資源的參考。
| 名稱 | 類型 | Description |
|---|---|---|
| definitionId |
integer (int32) |
包含發行環境定義的發行定義識別碼。 |
| environmentDefinitionId |
integer (int32) |
發行環境定義的標識碼。 |
TeamProjectReference
表示 TeamProject 的淺層參考。
| 名稱 | 類型 | Description |
|---|---|---|
| abbreviation |
string |
項目縮寫。 |
| defaultTeamImageUrl |
string |
默認小組身分識別影像的 URL。 |
| description |
string |
專案的描述(如果有的話)。 |
| id |
string (uuid) |
項目標識碼。 |
| lastUpdateTime |
string (date-time) |
專案上次更新時間。 |
| name |
string |
專案名稱。 |
| revision |
integer (int64) |
專案修訂。 |
| state |
項目狀態。 |
|
| url |
string |
物件完整版本的 URL。 |
| visibility |
項目可見度。 |
TestOutcomeSettings
測試結果設定
| 名稱 | 類型 | Description |
|---|---|---|
| syncOutcomeAcrossSuites |
boolean |
設定套件間相同測試測試結果如何顯示的值 |
TestPlan
測試計劃資源。
| 名稱 | 類型 | Description |
|---|---|---|
| _links |
相關連結 |
|
| areaPath |
string |
測試計劃的區域。 |
| buildDefinition |
產生與此測試計劃相關聯的組建定義。 |
|
| buildId |
integer (int32) |
要測試的組建。 |
| description |
string |
測試計劃的描述。 |
| endDate |
string (date-time) |
測試計劃的結束日期。 |
| id |
integer (int32) |
測試計劃的標識碼。 |
| iteration |
string |
測試計劃的反覆項目路徑。 |
| name |
string |
測試計劃的名稱。 |
| owner |
測試計劃的擁有者。 |
|
| previousBuildId |
integer (int32) |
與測試計劃相關聯的先前組建標識碼 |
| project |
包含測試計劃的專案。 |
|
| releaseEnvironmentDefinition |
要用來從此測試計劃部署組建和執行自動化測試的版本環境。 |
|
| revision |
integer (int32) |
測試計劃的修訂。 |
| rootSuite |
測試計劃的根測試套件。 |
|
| startDate |
string (date-time) |
測試計劃的開始日期。 |
| state |
string |
測試計劃的狀態。 |
| testOutcomeSettings |
在測試計劃下設定測試套件之間相同測試需要運作方式的值 |
|
| updatedBy |
測試計劃上次更新的身分識別參考 |
|
| updatedDate |
string (date-time) |
測試計劃的更新日期 |
TestPlanCreateParams
測試計劃會建立參數。
| 名稱 | 類型 | Description |
|---|---|---|
| areaPath |
string |
測試計劃的區域。 |
| buildDefinition |
產生與此測試計劃相關聯的組建定義。 |
|
| buildId |
integer (int32) |
要測試的組建。 |
| description |
string |
測試計劃的描述。 |
| endDate |
string (date-time) |
測試計劃的結束日期。 |
| iteration |
string |
測試計劃的反覆項目路徑。 |
| name |
string |
測試計劃的名稱。 |
| owner |
測試計劃的擁有者。 |
|
| releaseEnvironmentDefinition |
要用來從此測試計劃部署組建和執行自動化測試的版本環境。 |
|
| startDate |
string (date-time) |
測試計劃的開始日期。 |
| state |
string |
測試計劃的狀態。 |
| testOutcomeSettings |
在測試計劃下設定測試套件之間相同測試需要運作方式的值 |
TestSuiteReference
測試套件參考資源。
| 名稱 | 類型 | Description |
|---|---|---|
| id |
integer (int32) |
測試套件的標識碼。 |
| name |
string |
測試套件的名稱。 |