【问题标题】:ALM Rest API - Maximum number of expression in a list is 1000ALM Rest API - 列表中的最大表达式数为 1000
【发布时间】:2019-01-30 18:18:19
【问题描述】:

我正在尝试通过REST api创建一个运行,但是因为有太多的testcycls,内部的JDBC失败了......

输入http://SERVER/qcbin/rest/domains/DOMAIN/projects/PROJECT/runs

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Entity Type="run">
<Fields>
<Field Name="test-config-id"><Value>8901</Value></Field>
<Field Name="cycle-id"><Value>123</Value></Field>
<Field Name="test-id"><Value>4567</Value></Field>
<Field Name="testcycl-id"><Value>55638</Value></Field>
<Field Name="build-revision"><Value>1</Value></Field>
<Field Name="name"><Value>MyRun</Value></Field>
<Field Name="owner"><Value>johnsmith</Value></Field>
<Field Name="status"><Value>Passed</Value></Field>
<Field Name="subtype-id"><Value>hp.qc.run.external-test</Value></Field>
<Field Name="duration"><Value>5</Value></Field>
<Field Name="execution-date"><Value>2016-09-23</Value></Field>
<Field Name="execution-time"><Value>08:01:07</Value></Field>
<Field Name="status"><Value>Passed</Value></Field>
</Fields>
</Entity>

错误是

“Id”:“qccore.general-error”,“Title”:“意外失败 getValuePostProcess”、“ExceptionProperties”:空、“StackTrace”: “java.sql.SQLException:[Mercury][Oracle JDBC 驱动程序][Oracle]ORA-01795:列表中的最大表达式数为 1000\n\n失败的 SQL: /* ~~QC */ SELECT TSC_NAME , TC_TESTCYCL_ID, TC_TEST_INSTANCE,TS_NAME FROM TESTCYCL INNER JOIN TEST_CONFIGS ON TC_TEST_CONFIG_ID = TSC_ID 内部连接测试 TC_TEST_ID = TS_TEST_ID WHERE TC_TESTCYCL_ID IN (1,2,3...54802)

有什么办法可以解决这个问题吗?

添加标签

【问题讨论】:

  • 请发布执行此操作的代码块。仅发布端点和示例负载不会有太大帮助
  • 不,我怀疑这会有所帮助,它是 HP ALM 提供的 REST API。就像我说的那样,这是一个内部 JDBC 错误,它是由发送带有有效负载的简单 curl 命令引起的。但是在与 API 搏斗之后,我找到了解决方案。如果人们有类似的问题。阅读下面的答案

标签: oracle jdbc alm hp-alm


【解决方案1】:

所以我不认为我尝试做的方式是正确的方法,因为我想做的是创建一个新的带有状态的 Run 对象。

我认为这没问题,但考虑了几个小时,这没有任何意义,因为手动 ALM 测试运行如下......

开始运行 -> 运行定义的测试用例 -> 将运行状态设置为进行中 -> 完成所有定义的测试后,它将状态更新为任何测试结果

所以你应该做的是

对于每个测试,

http://SERVER/qcbin/rest/domains/DOMAIN/projects/PROJECT/test-instance/TESTID 并传递状态为“IN PROGRESS”的有效负载

该请求将创建运行名称为“Fast_Run_RUNDATE”的运行

测试完成后,更新相同的 Run 状态

http://SERVER/qcbin/rest/domains/DOMAIN/projects/PROJECT/runs/RUNID 具有更新的有效负载和执行状态

【讨论】:

    猜你喜欢
    • 2015-05-29
    • 2011-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-20
    • 2018-11-15
    • 1970-01-01
    • 2020-09-28
    相关资源
    最近更新 更多