文档首页/ 测试计划 CodeArts TestPlan/ API参考/ API/ 测试设计接口管理/ 根据条件分页获取测试用例对象 - ShowTestcaseByPage
更新时间:2025-12-27 GMT+08:00
分享

根据条件分页获取测试用例对象 - ShowTestcaseByPage

功能介绍

根据查询条件分页获取测试用例对象列表

调用方法

请参见如何调用API

URI

POST /v2/{project_id}/testcases/page

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:

项目的32位uuid,项目唯一标识,通过获取CodeArts项目ID接口查询项目列表获取。

取值范围:

字符串长度32。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

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

约束限制:

必传。

取值范围:

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

默认取值:

不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

params

TestCasePageParam object

参数解释:

用例分页参数

表4 TestCasePageParam

参数

是否必选

参数类型

描述

offset

Integer

参数解释:

起始偏移量,表示从此偏移量开始查询,offset大于等于0,小于等于100000

limit

Integer

参数解释:

每页显示的条目数量,最大支持100条

deleted

String

参数解释:

是否删除

取值范围:

  • 1,表示已删除

  • 0,表示未删除

id_collection

Array of strings

参数解释:

ID集合

mindmap_id

String

参数解释:

脑图ID

取值范围:

大小写字母、数字。

长度限制固定32位

node_id

String

参数解释:

节点ID

取值范围:

大小写字母、数字。

长度限制固定32位

node_id_collection

Array of strings

参数解释:

节点ID集合

project_id

String

参数解释:

项目ID

取值范围:

大小写字母、数字。

长度限制固定32位

is_archive

Boolean

参数解释:

是否归档

取值范围:

  • 0,表示未归档。

  • 1,表示已归档。

case_name

String

参数解释:

用例名称

取值范围:

大小写字母、数字、符号、中文。

长度限制1-10000位

has_sub_mindmap

Boolean

参数解释:

是否有子脑图

取值范围:

  • 0,表示无子脑图。

  • 1,表示有子脑图。

sub_mindmap_id

Array of strings

参数解释:

子脑图ID列表

响应参数

状态码:200

表5 响应Body参数

参数

参数类型

描述

code

String

参数解释:

错误码

取值范围:

大小写字母、数字。

长度限制0到20位

data

BasePageInfoTestCase object

参数解释:

返回体

取值范围:

不涉及

message

String

参数解释:

错误信息

取值范围:

大小写字母、数字、符号、中文。

长度限制0到1000位

表6 BasePageInfoTestCase

参数

参数类型

描述

limit

Integer

参数解释:

每页显示的条目数量,最大支持100条

取值范围:

数字,范围1到100。

list

Array of TestCase objects

参数解释:

返回体

取值范围:

不涉及

offset

Integer

参数解释:

起始偏移量,表示从此偏移量开始查询,offset大于等于0,小于等于100000

取值范围:

数字,范围0-100000。

pages

Integer

参数解释:

总页数量

取值范围:

数字,范围1-100。

size

Integer

参数解释:

列表个数

取值范围:

数字,范围1-200。

total

Long

参数解释:

总数

取值范围:

数字。

表7 TestCase

参数

参数类型

描述

auto_type

String

参数解释:

自动化类型

取值范围:

大小写字母、数字、符号。

case_design_desc

String

参数解释:

用例设计描述

取值范围:

大小写字母、数字、符号、中文。

case_name

String

参数解释:

用例名称

取值范围:

大小写字母、数字、符号、中文。

长度限制1-10000位

case_num

String

参数解释:

用例编号

取值范围:

大小写字母、数字、符号。

create_time

String

参数解释:

创建时间

取值范围:

固定日期格式yyyy-MM-dd HH:mm:ss

creator_name

String

参数解释:

创建人名字

取值范围:

大小写字母、数字、符号、中文。

creator_num

String

参数解释:

创建者,用户在IAM中的ID。

取值范围:

大小写字母、数字。

长度限制固定32位

deleted

String

参数解释:

删除状态

取值范围:

大小写字母、数字、符号、中文。

expected_results

String

参数解释:

预期结果

取值范围:

大小写字母、数字、符号、中文。

extra_param

String

参数解释:

额外模板字段:以json形式存储,前台解析

取值范围:

大小写字母、数字、符号、中文。

factor_combination_json

String

参数解释:

因子组合json

取值范围:

大小写字母、数字、符号、中文。

operation_and_expected_result

String

参数解释:

操作及预期结果

取值范围:

大小写字母、数字、符号、中文。

id

String

参数解释:

id 主键

取值范围:

大小写字母、数字。

长度限制固定32位

is_archive

Boolean

参数解释:

是否归档

取值范围:

  • 0,表示未归档。

  • 1,表示已归档。

mindmap_id

String

参数解释:

脑图ID

取值范围:

大小写字母、数字。

长度限制固定32位

node_id

String

参数解释:

节点ID

取值范围:

大小写字母、数字。

长度限制固定32位

batch_id

String

参数解释:

批次id

取值范围:

大小写字母、数字。

长度限制固定32位

branch_id

String

参数解释:

分支ID

取值范围:

大小写字母、数字。

plan_id

String

参数解释:

计划ID

取值范围:

大小写字母、数字。

长度限制固定32位

prerequisite

String

参数解释:

用例前置步骤

取值范围:

大小写字母、数字、符号、中文。

test_case_level

String

参数解释:

测试用例级别

取值范围:

大小写字母、数字、符号、中文。

test_procedure

String

参数解释:

测试步骤

取值范围:

大小写字母、数字、符号、中文。

update_name

String

参数解释:

更新人名字

取值范围:

大小写字母、数字、符号、中文。

update_num

String

参数解释:

更新人工号

取值范围:

大小写字母、数字。

update_time

String

参数解释:

更新时间

取值范围:

固定日期格式yyyy-MM-dd HH:mm:ss

url

String

参数解释:

url

uri

String

参数解释:

uri

取值范围:

大小写字母、数字、符号。

project_id

String

参数解释:

项目ID

取值范围:

大小写字母、数字。

长度限制固定32位

service_id

String

参数解释:

服务id

取值范围:

大小写字母、数字。

长度限制固定32位

状态码:400

表8 响应Body参数

参数

参数类型

描述

code

String

参数解释:

接口调用错误码。

取值范围:

大小写字母、数字。

长度限制0到20位

data

String

参数解释:

接口调用返回体

取值范围:

不涉及

message

String

参数解释:

接口调用错误信息

取值范围:

大小写字母、数字、符号、中文。

长度限制0到1000位

状态码:401

表9 响应Body参数

参数

参数类型

描述

code

String

参数解释:

接口调用错误码。

取值范围:

大小写字母、数字。

长度限制0到20位

data

String

参数解释:

接口调用返回体

取值范围:

不涉及

message

String

参数解释:

接口调用错误信息

取值范围:

大小写字母、数字、符号、中文。

长度限制0到1000位

请求示例

根据条件分页获取测试用例对象

post https://{endpoint}/v2/b94c9a6947a44597891e0a7362e7383f/testcases/page

{
  "params" : {
    "mindmap_id" : "ba2725c5b72c4ec18214736ceb99f3d7",
    "offset" : 1,
    "limit" : 10
  }
}

响应示例

状态码:200

OK

{
  "code" : "success",
  "data" : {
    "total" : 1,
    "list" : [ {
      "id" : "F0963D239A4E49219860EDC0741D7122",
      "prerequisite" : "",
      "url" : null,
      "uri" : "",
      "deleted" : "no",
      "create_time" : "2025/01/10 11:00:45 GMT+08:00",
      "creator_name" : "昵称xxx1111144445454545",
      "creator_num" : "efdb403066474ab08836b9eeaaa23bca",
      "update_name" : "昵称xxx1111144445454545",
      "update_num" : "efdb403066474ab08836b9eeaaa23bca",
      "update_time" : "2025/01/10 11:00:45 GMT+08:00",
      "case_name" : "子主题",
      "test_procedure" : "",
      "expected_results" : "",
      "operation_and_expected_result" : null,
      "case_design_desc" : null,
      "case_num" : null,
      "auto_type" : "true",
      "test_case_level" : "2",
      "node_id" : "7B3E87D771504220A2B9C757E6AC42E1",
      "mindmap_id" : "fb6bd82a6c084fdab0d8e5d8f820eabc",
      "is_archive" : false,
      "extra_param" : "{\"tcStatus\":\"init\"}",
      "project_id" : "76667cb543a14cacac2ade913ca44a47",
      "factor_combination_json" : null,
      "batch_id" : null,
      "service_id" : null,
      "branch_id" : null,
      "plan_id" : null
    } ],
    "offset" : 1,
    "limit" : 10,
    "pages" : 1,
    "size" : 1
  },
  "message" : null
}

状态码:400

Bad Request

{
  "error_code" : "TESTMIND.00021882",
  "error_msg" : "分支、计划id长度不合法,请稍后重试"
}

状态码:401

Unauthorized

{
  "error_code" : "DEV.00000003",
  "error_msg" : "认证信息过期"
}

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
52
53
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 ShowTestcaseByPageSolution {

    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();
        ShowTestcaseByPageRequest request = new ShowTestcaseByPageRequest();
        request.withProjectId("{project_id}");
        CommRequestTestCasePageParam body = new CommRequestTestCasePageParam();
        TestCasePageParam paramsbody = new TestCasePageParam();
        paramsbody.withOffset(1)
            .withLimit(10)
            .withMindmapId("ba2725c5b72c4ec18214736ceb99f3d7");
        body.withParams(paramsbody);
        request.withBody(body);
        try {
            ShowTestcaseByPageResponse response = client.showTestcaseByPage(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
37
38
39
# 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 = ShowTestcaseByPageRequest()
        request.project_id = "{project_id}"
        paramsbody = TestCasePageParam(
            offset=1,
            limit=10,
            mindmap_id="ba2725c5b72c4ec18214736ceb99f3d7"
        )
        request.body = CommRequestTestCasePageParam(
            params=paramsbody
        )
        response = client.show_testcase_by_page(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
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.ShowTestcaseByPageRequest{}
	request.ProjectId = "{project_id}"
	offsetParams:= int32(1)
	limitParams:= int32(10)
	mindmapIdParams:= "ba2725c5b72c4ec18214736ceb99f3d7"
	paramsbody := &model.TestCasePageParam{
		Offset: &offsetParams,
		Limit: &limitParams,
		MindmapId: &mindmapIdParams,
	}
	request.Body = &model.CommRequestTestCasePageParam{
		Params: paramsbody,
	}
	response, err := client.ShowTestcaseByPage(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多

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

状态码

状态码

描述

200

OK

400

Bad Request

401

Unauthorized

错误码

请参见错误码

相关文档