从ALM运行测试时,无法在远程计算机上复制剪贴板详细信息

时间:2014-10-20 08:07:44

标签: vbscript qtp qc alm hp-uft

我通过调用函数ErrorrecoveryHandler(object)在UFT中使用以下脚本进行恢复方案:

Function getClipBoardText(object)
    Dim objCB
    Set objCB = CreateObject("Mercury.Clipboard")
    Dim sClipText
    ' Assign clipboard contents to string variable sClipText.
    sClipText = objCB.GetText
    'getClipBoardText = sClipText
    Reporter.ReportEvent micFail, "There was an exception during execution", sClipText
End Function

Function ErrorrecoveryHandler(object)
    JavaWindow("LightSpeedEVoMain").JavaDialog("Error").JavaButton("Copy to Clipboard").Click
    Dim objCB
    Set objCB = CreateObject("Mercury.Clipboard")
    errorDetails = objCB.GetText
    Reporter.ReportEvent micFail, "There was an exception during execution", errorDetails
    JavaWindow("LightSpeedEVoMain").JavaDialog("Error").JavaButton("OK").Click
End Function

当我通过ALM在VM上运行我的应用程序并且出现错误时,上述函数调用被触发,但我收到错误:

  

运行错误:
ActiveX组件无法创建对象:' Mercury.Clipboard'

3 个答案:

答案 0 :(得分:0)

该ActiveX对象应该作为基本QTP / UFT安装的一部分注册。您可能想尝试重新安装。

答案 1 :(得分:0)

http://www.sqaforums.com/showflat.php?Number=203008中所述,Mercury.Clipboard只有在您安装QTPPlus 时才可用。

没有它,就没有ClipboardObject.dll,它是实现Mercury.Clipboard的DLL。

答案 2 :(得分:0)

奇怪但却是如此:如果您安装包含“Flight”示例项目的UFT,您还将安装ActiveX组件。 然后使用Mecury剪贴板就没问题了。