文档首页/ 测试计划 CodeArts TestPlan/ API参考/ API/ 测试套管理/ 初始化用例执行记录 - AddTestCaseResultLog
更新时间:2026-10-22 GMT+08:00
分享

初始化用例执行记录 - AddTestCaseResultLog

功能介绍

此接口用于初始化指定版本测试用例的执行记录,根据入参的project_uuid定位项目、version_uri指定版本、case_uri定位测试用例,实现测试用例执行记录的创建和初始化。

调用方法

请参见如何调用API。

URI

POST /v4/{project_id}/versions/{version_uri}/testcases/{case_uri}/results/init

表1 路径参数

参数

是否必选

参数类型

描述

project_id

是

String

参数解释:

项目UUID,项目唯一标识。获取方式请参见获取项目ID

约束限制:

不涉及

取值范围:

长度等于32位,包含大小写字母、数字

默认取值:

不涉及

version_uri

是

String

版本uri

case_uri

是

String

用例uri

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

是

String

参数解释:

用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

约束限制:

不涉及

取值范围:

字符串长度不少于1个字符,不超过100000个字符

默认取值:

不涉及

表3 请求Body参数

参数

是否必选

参数类型

描述

release_dev

否

String

版本号

响应参数

状态码:200

表4 响应Body参数

参数

参数类型

描述

total

Integer

起始记录数 大于 实际总条数时, 值为0, 分页请求才有此值

value

TestResultVo object

实际的数据类型:单个对象,集合 或 NULL

reason

String

业务失败的提示内容

page_size

Integer

每页展示条数

page_no

Integer

页码

has_more

Boolean

是否有更多

表5 TestResultVo

参数

参数类型

描述

uri

String

参数解释

用例执行结果的唯一标识URI

取值范围

11-34位字母及数字

name

String

参数解释

用例结果名称,用于标识本次用例执行的结果记录

取值范围

不涉及

author

String

参数解释

用例结果创建人的用户ID

取值范围

不涉及

rank

Integer

参数解释

用例的优先级级别

取值范围

  • 0:Priority 0

  • 1:Priority 1

  • 2:Priority 2

  • 3:Priority 3

  • 4:Priority 4

result

Integer

参数解释

测试结果Code,用于标识用例的执行结果

取值范围

不涉及

round

Integer

参数解释

用例执行的批次编号

取值范围

大于等于1的整数

preparation

String

参数解释

用例执行的前置条件

取值范围

不涉及

description

String

参数解释

用例结果描述

取值范围

不涉及

region

String

参数解释

用例结果所属的逻辑Region

取值范围

不涉及

steps

Array of ResultStepVo objects

参数解释

用例执行的步骤列表,每个步骤包含步骤内容、预期结果和实际结果,具体请参见ResultStepVo数据结构

取值范围

不涉及

number

String

参数解释

用例结果编号

取值范围

不涉及

author_name

String

参数解释

用例结果创建人的用户名称

取值范围

不涉及

begin_time

String

参数解释

用例执行的开始时间,格式为yyyy-MM-dd HH:mm:ss

取值范围

不涉及

begin_time_timestamp

Long

参数解释

执行开始时间的时间戳,单位为毫秒

取值范围

不涉及

end_time

String

参数解释

用例执行的结束时间,格式为yyyy-MM-dd HH:mm:ss

取值范围

不涉及

end_time_timestamp

Long

参数解释

执行结束时间的时间戳,单位为毫秒

取值范围

不涉及

creation_date

String

参数解释

用例结果创建时间,格式为yyyy-MM-dd HH:mm:ss

取值范围

不涉及

creation_date_timestamp

Long

参数解释

用例结果创建时间的时间戳,单位为毫秒

取值范围

不涉及

last_modified

String

参数解释

最后修改时间,格式为yyyy-MM-dd HH:mm:ss

取值范围

不涉及

last_modified_timestamp

Long

参数解释

最后修改时间的时间戳,单位为毫秒

取值范围

不涉及

last_change_time

String

参数解释

用例结果最后变更的时间,格式为yyyy-MM-dd HH:mm:ss

取值范围

不涉及

last_change_time_timestamp

Long

参数解释

最后变更时间的时间戳,单位为毫秒

取值范围

不涉及

dfx_test_result

String

参数解释

DFX测试结果

取值范围

不涉及

failure_cause

String

参数解释

用例执行失败的原因

取值范围

不涉及

parent_uri

String

参数解释

父节点的唯一标识,为分支用例URI或迭代用例URI,用于标识当前用例结果所属的父级用例

取值范围

不涉及

test_case_uri

String

参数解释

分支用例的唯一标识

取值范围

不涉及

test_case_name

String

参数解释

测试用例的名称

取值范围

不涉及

task_uri

String

参数解释

测试任务的唯一标识

取值范围

不涉及

result_name

String

参数解释

测试结果的中文名称,如通过、失败等

取值范围

不涉及

test_result_ae

String

参数解释

是否自动化执行

取值范围

  • '0':非自动化执行

  • '1':自动化执行

executor_id

String

参数解释

执行该用例的用户的唯一标识

取值范围

不涉及

executor_name

String

参数解释

执行该用例的用户名称

取值范围

不涉及

task_id

String

参数解释

执行机任务ID

取值范围

不涉及

execute_id

String

参数解释

执行ID

取值范围

不涉及

time_cost

Integer

参数解释

执行耗时,单位为毫秒

取值范围

不涉及

step_txt

String

参数解释

用例执行的测试步骤文本内容

取值范围

不涉及

step_expect

String

参数解释

测试步骤期望结果

取值范围

不涉及

step_actual

String

参数解释

测试步骤的实际执行结果描述

取值范围

不涉及

step_result

String

参数解释

测试步骤的执行结果状态

取值范围

不涉及

release_dev

String

参数解释

版本号

取值范围

不涉及

creation_version_uri

String

参数解释

创建版本URI

取值范围

不涉及

version_uri

String

参数解释

用例结果所属版本的唯一标识

取值范围

不涉及

project_uuid

String

参数解释

项目UUID,项目唯一标识

取值范围

固定长度32位字符(字母和数字)

report_url

String

参数解释

第三方过来的执行结果,返回跳转到第三方的url

取值范围

不涉及

test_case_number

String

参数解释

测试用例的编号,用于唯一标识用例

取值范围

不涉及

service_type

String

参数解释:

服务类型

取值范围:

  • -1:全量用例

  • 0:手工测试

  • 1:接口自动化

  • 7:功能自动化

  • 8:WebUI自动化

  • 100:自定义自动化(工厂)

  • 11:性能自动化

表6 ResultStepVo

参数

参数类型

描述

result

String

参数解释

测试步骤的执行结果状态码

取值范围

不涉及

test_step

String

参数解释

测试步骤的具体操作描述

取值范围

不涉及

expect_result

String

参数解释

测试步骤的预期执行结果

取值范围

不涉及

actual_result

String

参数解释

测试步骤的实际执行结果

取值范围

不涉及

result_name

String

参数解释

测试步骤执行结果的中文名称,如通过、失败等

取值范围

不涉及

状态码:400

表7 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

接口调用失败错误码

取值范围:

不涉及

error_msg

String

参数解释:

接口调用失败错误信息

取值范围:

不涉及

状态码:401

表8 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

接口调用失败错误码

取值范围:

不涉及

error_msg

String

参数解释:

接口调用失败错误信息

取值范围:

不涉及

状态码:404

表9 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

接口调用失败错误码

取值范围:

不涉及

error_msg

String

参数解释:

接口调用失败错误信息

取值范围:

不涉及

状态码:500

表10 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

接口调用失败错误码

取值范围:

不涉及

error_msg

String

参数解释:

接口调用失败错误信息

取值范围:

不涉及

请求示例

初始化用例执行记录

post https://{endpoint}/v4/300c6295a54c4c698608c878f47ddd59/versions/v91j0000vldleodb/testcases/v91k0000vrphmjbk/results/init

{
  "release_dev" : ""
}

响应示例

状态码:200

{
  "value" : {
    "uri" : "v9220000vrphnggd",
    "name" : "样例测试计划 Result2024-09-11",
    "author" : "e8d27b5521a64fb28a8fd9c99cd66eb3",
    "round" : 0,
    "region" : "cn-north-7",
    "parent_uri" : "v91k0000vrphmjbp",
    "test_case_uri" : "v91k0000vrphmjbk",
    "time_cost" : 0,
    "release_dev" : "",
    "version_uri" : "v91j0000vldleodb"
  }
}

SDK代码示例

SDK代码示例如下。

Java

初始化用例执行记录

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.cloudtest.v1.region.CloudtestRegion;
import com.huaweicloud.sdk.cloudtest.v1.*;
import com.huaweicloud.sdk.cloudtest.v1.model.*;


public class AddTestCaseResultLogSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");

        ICredential auth = new BasicCredentials()
                .withAk(ak)
                .withSk(sk);

        CloudtestClient client = CloudtestClient.newBuilder()
                .withCredential(auth)
                .withRegion(CloudtestRegion.valueOf("<YOUR REGION>"))
                .build();
        AddTestCaseResultLogRequest request = new AddTestCaseResultLogRequest();
        request.withVersionUri("{version_uri}");
        request.withCaseUri("{case_uri}");
        request.withProjectId("{project_id}");
        AddTestCaseResultLogInfo body = new AddTestCaseResultLogInfo();
        body.withReleaseDev("");
        request.withBody(body);
        try {
            AddTestCaseResultLogResponse response = client.addTestCaseResultLog(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}

Python

初始化用例执行记录

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcloudtest.v1.region.cloudtest_region import CloudtestRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcloudtest.v1 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]

    credentials = BasicCredentials(ak, sk)

    client = CloudtestClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(CloudtestRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = AddTestCaseResultLogRequest()
        request.version_uri = "{version_uri}"
        request.case_uri = "{case_uri}"
        request.project_id = "{project_id}"
        request.body = AddTestCaseResultLogInfo(
            release_dev=""
        )
        response = client.add_test_case_result_log(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)

Go

初始化用例执行记录

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    cloudtest "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cloudtest/v1"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cloudtest/v1/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cloudtest/v1/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")

    auth, err := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        SafeBuild()

    if err != nil {
        fmt.Println(err)
        return
    }

    hcClient, err := cloudtest.CloudtestClientBuilder().
         WithRegion(region.ValueOf("<YOUR REGION>")).
         WithCredential(auth).
         SafeBuild()


    if err != nil {
        fmt.Println(err)
        return
    }

    client := cloudtest.NewCloudtestClient(hcClient)

    request := &model.AddTestCaseResultLogRequest{}
	request.VersionUri = "{version_uri}"
	request.CaseUri = "{case_uri}"
	request.ProjectId = "{project_id}"
	releaseDevAddTestCaseResultLogInfo:= ""
	request.Body = &model.AddTestCaseResultLogInfo{
		ReleaseDev: &releaseDevAddTestCaseResultLogInfo,
	}
	response, err := client.AddTestCaseResultLog(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

OK

400

Bad Request

401

Unauthorized

404

Not Found

500

Internal Server Error

错误码

请参见错误码。

相关文档