文档首页/ 测试计划 CodeArts TestPlan/ API参考/ API/ 测试报表管理/ 根据查询条件获取测试报告列表
更新时间:2025-07-24 GMT+08:00
分享

根据查询条件获取测试报告列表

功能介绍

根据查询条件获取测试报告列表

调用方法

请参见如何调用API

URI

GET /testreport/v4/{project_id}/test-reports

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

项目UUID,项目唯一标识,固定长度32位字符(字母和数字)。获取方式请参见获取项目ID

约束限制:

不涉及

取值范围:

项目uuid应符合如下规则:长度等于32位,包含大小写字母、数字

默认取值:

不涉及

表2 Query参数

参数

是否必选

参数类型

描述

key_word

String

参数解释

名称关键词

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

own

Boolean

参数解释

是否是我的测试报告

约束限制

不涉及

取值范围

true:是 false:否

默认取值

不涉及

page_no

Integer

参数解释

页数

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

page_size

Integer

参数解释

每页条数

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

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

约束限制:

必传。

取值范围:

字符串长度不少于1,不超过10万。

默认取值:

不涉及。

响应参数

状态码:200

表4 响应Body参数

参数

参数类型

描述

status

String

参数解释

状态码

取值范围

success|error;

result

ResultValueListTestReportVo object

参数解释

请求返回的数据

取值范围

success|error;

error

ApiError object

参数解释

错误信息

取值范围

不涉及

request_id

String

参数解释

请求id

取值范围

由接口调用方传入,建议使用UUID保证请求的唯一性。

server_address

String

参数解释

本次请求的受理的服务地址

取值范围

不涉及

表5 ResultValueListTestReportVo

参数

参数类型

描述

total

Integer

参数解释

总数

取值范围

不涉及

value

Array of TestReportVo objects

参数解释

请求返回的数据

取值范围

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

reason

String

参数解释

业务失败的提示内容

取值范围

不涉及

page_size

Integer

参数解释

分页大小

取值范围

不涉及

page_no

Integer

参数解释

分页编码

取值范围

不涉及

has_more

Boolean

参数解释

是否有更多

取值范围

true:是 false:否

表6 TestReportVo

参数

参数类型

描述

uri

String

参数解释

测试报告Uri

取值范围

不涉及

name

String

参数解释

测试报告名称

取值范围

不涉及

creator

String

参数解释

创建人ID

取值范围

不涉及

updator

String

参数解释

修改人ID

取值范围

不涉及

version_uri

String

参数解释

测试计划Uri

取值范围

不涉及

branch_uri

String

参数解释

分支Uri

取值范围

不涉及

version_name

String

参数解释

测试计划名称

取值范围

不涉及

branch_name

String

参数解释

分支名称

取值范围

不涉及

test_conclusion

String

参数解释

测试结论

取值范围

不涉及

test_conclusion_details

String

参数解释

测试结论描述

取值范围

不涉及

defect_resolution_rate

String

参数解释

缺陷解决率

取值范围

不涉及

defect_resolution_score

String

参数解释

缺陷解决分数

取值范围

不涉及

case_execution_rate

String

参数解释

用例执行率

取值范围

不涉及

case_execution_score

String

参数解释

用例执行分数

取值范围

不涉及

case_pass_rate

String

参数解释

用例通过率

取值范围

不涉及

case_pass_score

String

参数解释

用例通过分数

取值范围

不涉及

issue_pass_rate

String

参数解释

需求通过率

取值范围

不涉及

issue_pass_score

String

参数解释

需求通过分数

取值范围

不涉及

issue_coverage_rate

String

参数解释

需求覆盖率

取值范围

不涉及

issue_coverage_score

String

参数解释

需求覆盖分数

取值范围

不涉及

project_residual_defect_index

String

参数解释

项目总遗留DI

取值范围

不涉及

iterator_residual_defect_index

String

参数解释

计划新增DI

取值范围

不涉及

case_automation_details

CaseAutomationDetailsVo object

参数解释

用例自动化信息

取值范围

不涉及

case_validity_ratio

String

参数解释

用例有效性比例

取值范围

不涉及

issue_details

IssuePassDetailsVo object

参数解释

需求信息

取值范围

不涉及

case_details

Array of NameAndValueVo objects

参数解释

用例通过情况

取值范围

不涉及

defect_details_by_severity

Array of IdAndNameAndValueVo objects

参数解释

缺陷严重程度

取值范围

不涉及

defect_details_by_module

Array of IdAndNameAndValueVo objects

参数解释

缺陷按照模块分布情况

取值范围

不涉及

case_pass_rate_by_test_type

Array of DetailTestTypeCasePassRateVo objects

参数解释

每个测试类型的用例通过率

取值范围

不涉及

test_report_custom_report_detail

Array of CustomReportListVo objects

参数解释

测试报告自定义报告详情

取值范围

不涉及

create_time

String

参数解释

创建时间

取值范围

不涉及

create_timestamp

Long

参数解释

创建时间戳

取值范围

不涉及

creator_name

String

参数解释

创建人名

取值范围

不涉及

update_time

String

参数解释

修改时间

取值范围

不涉及

update_timestamp

Long

参数解释

修改时间戳

取值范围

不涉及

updator_name

String

参数解释

修改人名

取值范围

不涉及

project_id

String

参数解释

项目UUID,项目唯一标识,固定长度32位字符(字母和数字)。获取方式请参见获取项目ID

取值范围

32位字符(字母和数字)

risk_analysis

String

参数解释

风险分析

取值范围

不涉及

表7 CaseAutomationDetailsVo

参数

参数类型

描述

case_automation_rate

String

参数解释

用例自动化率

取值范围

不涉及

service_type_number_list

Array of NameAndValueVo objects

参数解释

服务类型对应的用例数目

取值范围

不涉及

表8 IssuePassDetailsVo

参数

参数类型

描述

testing

Integer

参数解释

统计测试中的需求

取值范围

不涉及

finished

Integer

参数解释

统计已完成的需求

取值范围

不涉及

not_tested

Integer

参数解释

统计未完成的需求

取值范围

不涉及

表9 NameAndValueVo

参数

参数类型

描述

name

String

参数解释

名称

取值范围

不涉及

value

Integer

参数解释

取值范围

不涉及

表10 IdAndNameAndValueVo

参数

参数类型

描述

name

String

参数解释

名称

取值范围

不涉及

value

Integer

参数解释

取值范围

不涉及

id

String

参数解释

id

取值范围

不涉及

表11 DetailTestTypeCasePassRateVo

参数

参数类型

描述

test_type

Integer

参数解释

测试类型

取值范围

不涉及

case_pass_rate

String

参数解释

用例通过率

取值范围

不涉及

表12 CustomReportListVo

参数

参数类型

描述

id

String

参数解释:

报表id

取值范围:

不涉及

name

String

参数解释:

报表名称

取值范围:

不涉及

filter

ReportFilter object

参数解释

过滤信息

取值范围

不涉及

workpiece_type

String

参数解释

工件类型

取值范围

(用例:case,测试套:task)

analysis_dimension

String

参数解释

分析维度

取值范围

不涉及

compare_dimension

String

参数解释

对比维度

取值范围

不涉及

chart_data

Array of ReportChartDataVo objects

参数解释

报表数据

取值范围

不涉及

表13 ReportFilter

参数

参数类型

描述

creatorIds

String

参数解释

创建人

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

ownerIds

String

参数解释

所属人

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

ranks

String

参数解释

级别

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

releaseIds

String

参数解释

releaseId

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

status

String

参数解释

状态

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

moduleIds

String

参数解释

级别

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

results

String

参数解释

结果

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

labelIds

String

参数解释

标签

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

startTime

String

参数解释

开始时间

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

endTime

String

参数解释

结束时间

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

isAssociateIssue

String

参数解释

是否关联需求

约束限制

不涉及

取值范围

不涉及

默认取值

不涉及

表14 ReportChartDataVo

参数

参数类型

描述

id

String

参数解释

报表id

取值范围

不涉及

name

String

参数解释

报表名称

取值范围

不涉及

analyze_dim

ReportDimVo object

参数解释

分析维度数据

取值范围

不涉及

compare_dim

Array of ReportDimVo objects

参数解释

对比维度数据

取值范围

不涉及

表15 ReportDimVo

参数

参数类型

描述

id

String

参数解释

id

取值范围

不涉及

name

String

参数解释

名称

取值范围

不涉及

value

Integer

参数解释

取值范围

不涉及

表16 ApiError

参数

参数类型

描述

code

String

参数解释:

业务失败的错误码

取值范围:

不涉及

reason

String

参数解释:

业务失败的提示内容

取值范围:

不涉及

状态码:400

表17 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

接口调用失败错误码

取值范围:

不涉及

error_msg

String

参数解释:

接口调用失败错误信息

取值范围:

不涉及

状态码:401

表18 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

接口调用失败错误码

取值范围:

不涉及

error_msg

String

参数解释:

接口调用失败错误信息

取值范围:

不涉及

状态码:404

表19 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

接口调用失败错误码

取值范围:

不涉及

error_msg

String

参数解释:

接口调用失败错误信息

取值范围:

不涉及

状态码:500

表20 响应Body参数

参数

参数类型

描述

error_code

String

参数解释:

接口调用失败错误码

取值范围:

不涉及

error_msg

String

参数解释:

接口调用失败错误信息

取值范围:

不涉及

请求示例

根据查询条件获取测试报告列表

get https://{endpoint}/v4/9b26f58ec29943f681804a6628779a23/test-reports?key_word=xxx&own=true&page_no=1&page_size=10

响应示例

状态码:200

OK

{
  "status" : "success",
  "result" : {
    "total" : 1,
    "value" : [ {
      "uri" : "v91t0000vrn1e27h",
      "name" : "XXX项目第一期测试报告",
      "creator" : "e8d27b5521a64fb28a8fd9c99cd66eb3",
      "version_uri" : "v91i0000vq98suqq",
      "branch_uri" : "v91i0000vq98suq1",
      "version_name" : "样例测试计划",
      "branch_name" : "基线",
      "test_conclusion" : "商用发布",
      "defect_details_by_severity" : [ ],
      "defect_details_by_module" : [ ],
      "create_time" : "2024-09-10 15:23:01",
      "create_timestamp" : 1725952981000,
      "creator_name" : "xxx"
    } ],
    "page_size" : 10,
    "page_no" : 1
  }
}

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
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 ListTestReportsByConditionSolution {

    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();
        ListTestReportsByConditionRequest request = new ListTestReportsByConditionRequest();
        request.withProjectId("{project_id}");
        try {
            ListTestReportsByConditionResponse response = client.listTestReportsByCondition(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
# 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 = ListTestReportsByConditionRequest()
        request.project_id = "{project_id}"
        response = client.list_test_reports_by_condition(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
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 := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        Build()

    client := cloudtest.NewCloudtestClient(
        cloudtest.CloudtestClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ListTestReportsByConditionRequest{}
	request.ProjectId = "{project_id}"
	response, err := client.ListTestReportsByCondition(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

错误码

请参见错误码

相关文档