无法使用HP ALM Rest API从Powershell自动执行LoadRunner测试

时间:2015-12-02 17:08:08

标签: powershell loadrunner

我正在尝试使用PowerShell命令来触发特定的LoadRunner测试。该测试已设计为HP ALM界面的一部分。

HP文档提供了REST API的完整详细信息: http://alm-help.saas.hp.com/en/12.50/api_refs/REST/webframe.htm#Overview.htm

似乎没有理由不应该从标准的PowerShell命令中解决这个问题,但是我无法在任何地方找到如何执行此操作的示例,并且HP参考仅包含Java示例(有一些简短的C#示例也在线上。

有谁知道我可以参考的任何例子?或者您是否可以共享任何可能有效的PS脚本?

RSVP - 谢谢

1 个答案:

答案 0 :(得分:0)

这是一些未经测试的代码,应该可以解决这个问题。

以下是Performance Center REST API文档: http://alm-help.saas.hp.com/en/12.50/api_refs/Performance_Center_REST_API/Performance_Center_REST_API.htm

您将不得不为第一个身份验证请求提供基本身份验证,并将cookie值用于下一个POST请求。

$PC_SERVER = "servername"

$headers = @{}
$headers.Add("Content-Type", "application/json")
Invoke-RestMethod -Method GET -Headers $headers -Uri http://$PC_SERVER:8080/qcbin/authentication-point/authenticate

$runrequest = "<Run xmlns=`"http://www.hp.com/PC/REST/API`"> <PostRunAction>Collate And Analyze</PostRunAction> <TestID>5</TestID> <TestInstanceID>4</TestInstanceID> <TimeslotDuration> <Hours>1</Hours> <Minutes>30</Minutes> </TimeslotDuration> <VudsMode>false</VudsMode></Run>"

$headers = @{}
$headers.Add("Content-Type", "application/json")
Invoke-RestMethod -Method GET -Headers $headers -body $runrequest -Uri http://$PC_SERVER:8080/LoadTest/rest/domains/{domainName}/projects/{projectName}/Runs


$headers = @{}
$headers.Add("Content-Type", "application/json")
Invoke-RestMethod -Method POST -Headers $headers -Uri http://$PC_SERVER:8080/qcbin/authentication-point/logout