
# 执行任务模板 - asyncExecuteTaskByModelUsingPost
#### 功能介绍
执行功能自动化任务模板，执行多个模板时，其中一个执行失败则返回失败
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-testman/cloudtest_03_2000.html)。
#### URI
POST /attask/v3/taskmodel/execution
#### 请求参数
表1请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。 通过调用IAM服务[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取（响应消息头中X-Subject-Token的值）。 **约束限制：** 必传。 **取值范围：** 字符串长度不少于1，不超过10万。 **默认取值：** 不涉及。 |
   
表2请求Body参数 
| 参数              | 是否必选 | 参数类型                                                                               | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|:---|
| port            | 否    | String                                                                             | 端口                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| testSuite       | 否    | Array of [testSuite] objects | 测试套件列表                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| sut_branch_name | 否    | String                                                                             | SUT分支名                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| sutName         | 否    | String                                                                             | SUT名称                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| userName        | 否    | String                                                                             | 用户名                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| testServiceId   | 否    | String                                                                             | **参数解释** 测试服务id **约束限制** 不涉及 **取值范围** 字符串长度不少于1，不超过100000 **默认取值** 不涉及 **获取方式** 从 GET /rest/me 的返回结果中 projectId 字段获取。 |
   
 表3testSuite 
| 参数     | 是否必选 | 参数类型   | 描述                                                                                                                                                          |
|:---|:---|:---|:---|
| taskId | 否    | String | 任务ID **获取方式** 从 POST /v3/task/list 的返回结果中对应的id字段获取。 |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数              | 参数类型                                                                                  | 描述        |
|:---|:---|:---|
| ip              | String                                                                                | 服务IP地址    |
| port            | String                                                                                | 服务端口号     |
| test_suite      | Array of [test_suite] objects | 测试套件列表    |
| sut_branch_name | String                                                                                | 测试SUT分支名  |
| sut_name        | String                                                                                | SUT名称     |
| user_name       | String                                                                                | 用户名称或用户ID |
| test_service_id | String                                                                                | 测试服务ID    |
   
 表5test_suite 
| 参数      | 参数类型   | 描述   |
|:---|:---|:---|
| task_id | String | 任务ID |
   
**状态码：401**
表6响应Body参数 
| 参数          | 参数类型   | 描述                 |
|:---|:---|:---|
| status      | String | 请求状态："failed" - 失败 |
| request_id  | String | 请求id               |
| server_ip   | String | 服务节点IP             |
| error_msg   | String | 错误信息               |
| error_code  | String | 错误码                |
| error_cause | String | 错误原因               |
| faq         | String | faq内容              |
   
**状态码：403**
表7响应Body参数 
| 参数          | 参数类型   | 描述                 |
|:---|:---|:---|
| status      | String | 请求状态："failed" - 失败 |
| request_id  | String | 请求id               |
| server_ip   | String | 服务节点IP             |
| error_msg   | String | 错误信息               |
| error_code  | String | 错误码                |
| error_cause | String | 错误原因               |
| faq         | String | faq内容              |
   
**状态码：404**
表8响应Body参数 
| 参数          | 参数类型   | 描述                 |
|:---|:---|:---|
| status      | String | 请求状态："failed" - 失败 |
| request_id  | String | 请求id               |
| server_ip   | String | 服务节点IP             |
| error_msg   | String | 错误信息               |
| error_code  | String | 错误码                |
| error_cause | String | 错误原因               |
| faq         | String | faq内容              |
   
#### 请求示例
执行任务模板, 执行多个模板时，其中一个执行失败则返回失败
```
post https://{endpoint}/attask/v3/taskmodel/execution
{
  "port" : "1001",
  "testSuite" : [ {
    "taskId" : "cvf123213121"
  } ],
  "sut_branch_name" : "测试",
  "sutName" : "test888",
  "userName" : "test1",
  "testServiceId" : "test33"
}
```
#### 响应示例
**状态码：200**
OK
```
{
  "ip" : "",
  "port" : "",
  "test_suite" : [ {
    "task_id" : "2587542699280171008"
  } ],
  "sut_branch_name" : "基线",
  "sut_name" : "deng_test",
  "user_name" : "efdb403066474ab08836b9eeaaa23bca",
  "test_service_id" : "c2d63f9d3af34177ab62545d841c78d7"
}
```
**状态码：401**
Unauthorized
```
{
  "status" : "401",
  "request_id" : "asdas233erdgfd2112312312312",
  "server_ip" : "121.231.12.1",
  "error_msg" : "认证信息过期",
  "error_code" : "DEV.00000003",
  "error_cause" : "认证信息过期",
  "faq" : "3123"
}
```
**状态码：403**
Forbidden
```
{
  "status" : "403",
  "request_id" : "asdas233erdgfd2112312312312",
  "server_ip" : "121.231.12.1",
  "error_msg" : "禁止访问",
  "error_code" : "DEV.00000003",
  "error_cause" : "禁止访问",
  "faq" : "3123"
}
```
**状态码：404**
Not Found
```
{
  "status" : "404",
  "request_id" : "asdas233erdgfd2112312312312",
  "server_ip" : "121.231.12.1",
  "error_msg" : "URL找不到",
  "error_code" : "DEV.00000003",
  "error_cause" : "URL找不到",
  "faq" : "3123"
}
```
#### 状态码
| 状态码 | 描述           |
|:---|:---|
| 200 | OK           |
| 401 | Unauthorized |
| 403 | Forbidden    |
| 404 | Not Found    |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-testman/ErrorCode.html)。
