0

我正在尝试让soapUI 和ALM 进行通信。我终于正确设置了 scriptom,甚至获得了 HP OTA ALM 参考。不过我有几个疑问...

  1. 参考说

您必须在将与 ALM 平台通信的每个工作站上下载并注册 COM 库

我不可能只将 OTAClient.dll 添加到 java.library.path 或其他地方并使其工作。我问这个是因为当脚本完成时,并不是脚本的所有用户都没有管理员权限来注册 dll。虽然他们肯定会拥有 dll,因为只要有人在他们的机器上打开 ALM,就会下载它。

自从我需要创建一个程序来通过程序访问 QC 或 ALM 已经有几年了,但以前我只会创建一个 ActiveXObject(使用 vbs)然后从那里开始,不需要注册或任何东西。

  1. 无论出于何种原因,我的以下代码都无法正常工作,有什么建议可以解决吗?

代码

import org.codehaus.groovy.scriptom.*;
def tdc = new ActiveXObject('TDApiOle80.TDConnection')

错误

org.codehaus.groovy.scriptom.ActiveXObject$CreationException: Could not create ActiveX object: 'TDApiOle80.TDConnection'; Can't co-create object error at line: 3

---更新-- 自从发布这个问题以来,我尝试注册 API 参考文档中提到的 dll,但仍然得到与之前相同的错误,所以我还有两个问题:D

根据 ALM 的 API 参考 chm doc 注册 dll 的步骤

To use the Open Test Architecture API as a stand-alone tool, develop your own applications in a development environment that supports COM. You must download and register the COM library on every workstation that will communicate with the ALM Platform. You must have a reference to the library in your application development project.

The library, OTAClient.dll, is automatically downloaded to your workstation the first time you run ALM. 

Register the library for the server by running Client Side Connectivity from the ALM Add-ins page. Select Add-ins from the Help menu. On the Add-ins page, select Client Side Connectivity, and click Download Add-in. You may need to repeat the registation if you use a different version of ALM or Quality Center 9.2 or later.

进一步的问题... 1. 我如何检查 dll 是否实际注册以及 64 位版本而不是 32 位版本?2. 使用 ALM 公开的 Rest API 来做我想做的事情会更容易吗?我希望代码能够与 ALM 和 QC9.0 一起使用。

4

2 回答 2

0

自 HP ALM 11 起。默认情况下不再注册 OTAClient.dll。要注册它,您需要用户从插件页面进行注册。可以从 /qcbin/ 上的链接访问它。如果我没记错的话,它被称为通用或共享部署,它需要管理员权限。

于 2013-09-19T10:26:49.307 回答
0
  1. 加载 ALM/QC COM API 时出错:OTAClient.dll 是仅 32 位的 DLL。因此,您需要确保您的应用程序是 32 位应用程序。对于 Java,这意味着您需要 32 位 JRE 或 JDK。
  2. ALM COM API 与 REST API:由于您的解决方案需要与 QC 9.0 和 ALM 11 及更高版本一起使用,因此 OTA / COM API 是您的最佳解决方案。ALM 11 中的 REST API 更具可移植性,允许您创建、读取、更新、删除 ALM 对象(需求、测试、测试结果、缺陷),但在 ALM 11 及更高版本中可用。

希望这可以帮助!

于 2013-10-16T08:25:05.017 回答