ALM Rest API-列表中的最大表达式数为1000

时间:2019-01-30 18:18:20

标签: oracle jdbc alm hp-alm

我正在尝试通过REST api创建运行​​,但是由于测试循环太多,因此内部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”:null,“ 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来自TESTCYCL内联接TEST_CONFIGS ON   TC_TEST_CONFIG_ID = TSC_ID内联接测试TC_TEST_ID = TS_TEST_ID   TC_TESTCYCL_ID IN(1,2,3 ... 54802)

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

添加标签

1 个答案:

答案 0 :(得分:0)

因此,我不认为我尝试执行的方法是正确的方法,因为我尝试执行的操作是创建一个具有状态的新Run对象。

我认为还可以,但是考虑了几个小时,这没有意义,因为随后会进行手动ALM测试运行...

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

所以你应该做的

对于每个测试,

  

输入   http://SERVER/qcbin/rest/domains/DOMAIN/projects/PROJECT/test-instance/TESTID   并传递状态为“进行中”的有效载荷

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

测试完成后,以状态更新相同的运行

  

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