从REST执行QTP TestSet

时间:2013-05-02 19:10:25

标签: rest qtp qc

有没有人有一个xml块会启动一个测试集(卷曲示例会很棒)?

HP-ALM中的REST文档未说明如何从REST执行测试集。有关于如何创建缺陷的描述。第二个问题是文档建议必填字段包括cycle_id和testcycl_id,我无法找到获取其值的方法。

具体 - 我想通过POST

创建一个Run对象

感谢

3 个答案:

答案 0 :(得分:0)

ALM REST API没有启动自动化测试的功能。我们需要使用OTA API。

答案 1 :(得分:0)

通过OTA在VBS中尝试此代码。

    Set tdc = CreateObject("TDAPIOLE80.TDConnection")

    tdc.InitConnectionEx "https://URLALM"
    tdc.login "USer", "pass"
    tdc.Connect "DOMAIN", "PROJECT"

    Set objShell = CreateObject("WScript.Shell")
    'Set TSetFact = tdc.TestSetFactory
    Set tsTreeMgr = tdc.TestSetTreeManager
    Set tsFolder = tsTreeMgr.NodeByPath("your tree")
    Set tsList = tsFolder.FindTestSets("testSet")
    Set theTestSet = tsList.Item(1) 'list of testSets

    Set Scheduler = theTestSet.StartExecution("")

    if err.number <> 0 then
        'msgbox err.Description
    Else
        Scheduler.RunAllLocally = True
        Scheduler.Run

        Set execstatus = Scheduler.ExecutionStatus
        Do While RunFinished = False
            execstatus.RefreshExecStatusInfo "all", True
            RunFinished = execstatus.Finished
            Set EventsList = execstatus.EventsList
            For Each ExecEventInfoObj In EventsList
                strNowEvent = ExecEventInfoObj.EventType
            Next
            For i = 1 To execstatus.Count
                Set TestExecStatusobj = execstatus.Item(i)
                intTestid = TestExecStatusobj.TestInstance
            Next
        Loop

        execstatus.RefreshExecStatusInfo "all", True
    End if

    Set tsTreeMgr = nothing
    Set tsFolder = nothing
    Set tsList = nothing
    Set theTestSet =nothing

    tdc.Disconnect
    tdc.Logout

   tdc.ReleaseConnection
   Set tdc = Nothing

答案 2 :(得分:0)

通过Rest Api,您可以为测试集中的每个测试实例创建运行,并在执行时更新该特定测试用例的每个步骤到运行步骤。 创建运行时,您必须在必填字段后更新: -

http://<server>/qcbin//rest/domains/<>/projects/<>/runs/

<Entity Type=\"run\"><Fields>
<Field Name=\"name\"><Value>Run_2015-04-15</Value></Field>
<Field Name=\"testcycl-id\"><Value>573269</Value></Field>
<Field Name=\"cycle-id\"><Value>4363</Value></Field>
<Field Name=\"test-id\"><Value>29201</Value></Field>
<Field Name=\"subtype-id\"><Value>hp.qc.run.MANUAL</Value></Field>
<Field Name=\"owner\"><Value>owner</Value></Field>
</Fields></Entity>

创建运行后,您需要从生成的Response Xml中获取Run-ID {Run ID} /qcbin/rest/domains/{domain}/projects/{project}/runs/?query={name[Run_2015-04-15]} - 使用此网址获取{运行ID} 将用于更新步骤。用于以下Url

/qcbin/rest/domains/{domain}/projects/{project}/runs/{Run ID}/

对于跑步步骤: - 获取特定步骤的ID(如步骤1,2 ...)。使用以下查询URL。

/qcbin/rest/domains/{domain}/projects/{project}/runs/{Run ID}/run-steps/?query={name[Step 1]}-use this url to get Step ID {ID}.

更新步骤: - 1.使用以下网址: -

 /qcbin/rest/domains/{domain}/projects/{project}/runs/{Run ID}/run-steps/{ID}

2.生成Xml并使用post方法更新状态字段。

 <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> 
- <Entity Type="run-step">
+ <ChildrenCount>
  <Value>0</Value> 
  </ChildrenCount>
- <Fields>
+ <Field Name="test-id">
  <Value>6</Value> 
  </Field>
+ <Field Name="comp-status">
  <Value /> 
  </Field>
  <Field Name="rel-obj-id" /> 
  <Field Name="obj-id" /> 
+ <Field Name="has-linkage">
  <Value>N</Value> 
  </Field>
+ <Field Name="execution-date">
  <Value>2017-09-25</Value> 
  </Field>
+ <Field Name="path">
  <Value /> 
  </Field>
+ <Field Name="desstep-id">
  <Value>1031</Value> 
  </Field>
+ <Field Name="attachment">
  <Value>Y</Value> 
  </Field>
+ <Field Name="has-picture">
  <Value>N</Value> 
  </Field>
  <Field Name="tree-parent-id" /> 
+ <Field Name="id">
  <Value>24820</Value> 
  </Field>
+ <Field Name="component-data">
  <Value /> 
  </Field>
+ <Field Name="bpt-path">
  <Value /> 
  </Field>
+ <Field Name="actual">
  <Value><html><body> Results match expected </body></html></Value> 
  </Field>
+ <Field Name="step-order">
  <Value>1</Value> 
  </Field>
  <Field Name="level" /> 
+ <Field Name="expected">
  <Value><html><body> <div align="left"> <font face="Arial"><span style="font-size:8pt">Successful launch of website</span></font> </div> </body></html></Value> 
  </Field>
  <Field Name="line-no" /> 
+ <Field Name="comp-subtype-name">
  <Value /> 
  </Field>
- <Field Name="extended-reference">
  <Value /> 
  </Field>
- <Field Name="name">
  <Value>Step 1</Value> 
  </Field>
+ <Field Name="execution-time">
  <Value>03:56:29</Value> 
  </Field>
+ <Field Name="bpta-condition">
  <Value /> 
  </Field>
+ <Field Name="user-template-01">
  <Value>Website Tester</Value> 
  </Field>
+ <Field Name="parent-id">
  <Value>1522</Value> 
  </Field>
+ <Field Name="user-template-03">
  <Value /> 
  </Field>
+ <Field Name="bpt-facet-type">
  <Value /> 
  </Field>
+ <Field Name="user-template-04">
  <Value>kama</Value> 
  </Field>
- <Field Name="status">
  <Value>Passed</Value> 
  </Field>
  </Fields>