更新时间:2024-06-17 GMT+08:00
分享

用户Testhub服务操作

场景描述

该场景适用于未在测试计划中创建对接自己的用户服务的TestHub服务的用户,创建后可以直接在测试计划界面通过TestHub服务管理用户服务的项目、计划及用例。

下面介绍如何调用新测试类型服务注册API创建新的TestHub服务,以及对于服务的删改查操作,API的调用方法请参见如何调用API

前提条件

参与注册需要提供自己的用户服务的域名,且未在测试计划中注册过,并且需要客户自己开发一套和TestHub服务对接的API。

涉及接口

用户TestHub服务操作包括,注册新服务、获取已注册服务、更新已注册服务、删除已注册服务,其中获取、更新、删除操作需要注册过后方可进行,涉及接口如下:

  • 新测试类型服务注册:未注册过服务的全新用户使用,将自己的服务名和服务域名注册。
  • 用户获取自己当前已经注册的服务:已注册过服务的用户可以查询到自己服务的服务ID和服务名称。
  • 更新已注册服务:已注册过服务的用户可以修改自己的服务名和服务域名。
  • 删除已注册服务:已注册过服务的用户可以传入自己的服务ID删除掉自己已注册的服务。

操作步骤

  1. 确定调用API鉴权时使用的Token。

    1. 查询token,详情请参见获取用户Token
    2. 获取响应Header参数中X-Subject-Token对应的值。

  2. 确定Testhub服务名称及用户服务域名并注册。

    • 接口相关信息

      URL格式: POST /v1/services

      接口请求参数说明详情,请参见新测试类型服务注册

    • 请求示例

      POST https://{endpoint}/v1/services

      {endpoint}信息请从终端节点获取。

      Body:

      {
        "service_name" : "这是一个测试类型名称",
        "server_host" : "https://xxx.xxx.xxx"
      }
    • 响应示例
      {
        "service_name" : "这是一个测试类型名称",
        "service_id" : 13
      }

  3. 确定用户的Testhub服务已被注册成功。

    • 接口相关信息

      URL格式: GET /v1/services

      接口请求参数说明详情,请参见用户获取自己当前已经注册的服务

    • 请求示例

      GET https://{endpoint}/v1/services

      {endpoint}信息请从终端节点获取。

      Body:无

    • 响应示例
      {
        "services" : [ {
          "id" : 13,
          "name" : "这是一个测试类型名称"
        } ]
      }

      获取到返回的注册信息即证明用户已注册成功。

  4. 用户确定自己的Testhub服务注册成功后,可对服务进行删改操作。

    删改操作建立在用户已成功注册自己的Testhub服务基础上。

    • 更新服务信息:
      • 接口相关信息

        URL格式: PUT /v1/services/{service_id}

        接口请求参数说明详情,请参见更新已注册服务

      • 请求示例

        PUT https://{endpoint}/v1/services/{service_id}

        • {endpoint}信息请从终端节点获取。
        • {service_id}从查询服务返回的service_id获取。

        Body:

        {
          "service_name" : "这是修改后的测试类型名称",
          "server_host" : "https://xxx.xxx.xxx2"
        }
      • 响应示例
        {
          "service_name" : "这是修改后的测试类型名称",
          "service_id" : 13
        }
    • 删除服务信息:
      • 接口相关信息

        URL格式: DELETE /v1/services/{service_id}

        接口请求参数说明详情,请参见删除已注册服务

      • 请求示例

        DELETE https://{endpoint}/v1/services/{service_id}

        • {endpoint}信息请从终端节点获取。
        • {service_id}从查询服务返回的service_id获取。

        Body:无

      • 响应示例
        {
          "error_code" : "CLOUDTEST.00000000",
          "error_msg" : "失败原因XXXXX"
        }

相关文档