在testset中插入Testcase并使用run更新它们

时间:2017-10-19 08:21:04

标签: java rest api alm

我有一个自定义报告,其中包含自动化测试的测试结果。现在,我希望能够将一些测试用例的数据传输到HP ALM,但它们需要在特定的测试集中。

我找不到使用HP ALM的REST API指定在何处以及如何执行此操作的方法。

我已经能够登录/注销并查询HP ALM。但是我没有找到如何使用restcall插入数据。

以下是我对POST / logout进行POST调用的功能

try{
        responseText = "";
        requestp = new HttpPost(URL);
        for(int i = 0; i<headerValues.size();i++){
            requestp.setHeader(headerNames.get(i), headerValues.get(i));
        }

        StringEntity input = new StringEntity(XML);
        input.setContentType("text/xml");
        requestp.setEntity(input);

        response = client.execute(requestp);
        rd = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
        String line = "";

        while ((line = rd.readLine()) != null) {
            responseText += line;
        }
        return responseText;
    }catch(Exception e){
        e.printStackTrace();
        return "";
    }

1 个答案:

答案 0 :(得分:0)

要将结果发布到ALM,您需要4件事 在ALM测试实验室部分您需要创建

  1. 创建测试集文件夹
  2. 创建测试集
  3. 创建测试实例
  4. 最后创建并更新测试运行 - &gt;这是您发布结果的位置 它的工作方式
  5. Test_set_folder |_ Test set |_ Test instance 1 ( They are test cases in ALM test plan) |_ Test instance 2 |_ Test instance 3

    然后基于测试实例,您将创建测试运行,在这里您将插入结果

    创建测试集文件夹

    你需要posthttp://qcurl/rest/test-set-folder这将创建带有和id的test-set-folder(响应应该有id) 现在保留该ID

    创建测试集

    在发布有效负载时,使用与test-set-folder相同的方法创建测试集应该在之前的调用中返回一个字段parent-id= test-set-folder-id。这将返回test-set

    的id

    创建测试集实例

    http://qcurl/test-instances

    使用相同的策略,您可以创建test-set-instances,确保有效负载在之前的调用中返回cycle-id=<test-set-id>

    创建试运行

    http://qcurl/runs

    使用cycle-id=test-set-idtestcycl-id=test-instance-id发布数据。这可确保运行与先前的测试集相关联。您可以将status值设置为not completed 这将返回该测试实例的运行ID

    将结果(PUT)结果发送回ALM

    现在完成此操作后,您需要使用结果更新结果

    确保您现在向同一次运行发送put个请求

    http://qcurl/run/<id>

    status=passedfailed

    希望这有帮助