大家都知道QTP与ALM (QC的升级版)集成是最好的一个分布式执行的结合。因为毕竟QTP是一个商业软件,HP当然不会让你去跟其他的open source的工具去集成,要不他到哪里去挣钱。

有时候服务器端的ALM 也安装好了,QTP也配置好了,可能运行的时候就是总是报一些无关紧要的操作。

问题:

本地直接运行QTP test 或者是LR test在ALM中没有问题。可是从远程的机器上运行QTP test就报“Access is denied ” ,”unspecified error” 或者是“host is not available”.这个如果你确定了你ALM的的客户端与远程的运行脚本的机器通信正常,那么很可能这里的原因就是DCOM 的配置导致的问题。

参考HP的官网有一段说明是如何配置执行脚本的机器上的DCOM 以便ALM 可以远程运行QTP类型或者是VAPI-XP ,System-test类型或者是LoadRunner 类型的测试.

The DCOM we need to follow is  just the HP document as described  as blow:

http://support.openview.hp.com/selfsolve/document/KM187086

准备工作                                                                                                       

你需要下载一个DCOM的 配置工具:

dcomperm.exe(http://serverfault.com/questions/333766/how-to-get-dcomperm-exe-from-microsoft from this url you can get the the dcom file location ).

 

参考地址                                                                                                             

下面的这个是我对这个问题的一个调查结果,直接email给了我的manager(这个配置可以跨域运行你的机器,也就是说运行机器和你的ALM 客户端不一定是在一个域上也是可以运行的,只要DCOM 权限配置好了就没问题。不像有的人说的那样,需要在运行脚本的机器上配置当前的用户加入到当前的域中,并且给这个用户一个DCOM remote run的权限。告诉你,这个完全没必要):

配置脚本文件                                                                  

完整的配置脚本如下,需要将该下面的脚本保存为BAT文件,然后copy到你需要运行QTP脚本或者是LR脚本的机器上。运行在你需要运行QTP或者是LR脚本的机器上:

SET logfile="C:\Temp\RunDCOM.log"

@echo off
echo Working on default DCOM permissions >%logfile%
echo>>%logfile%
echo>>%logfile%
echo DCOM Access Limit Permissions >>%logfile%
echo >>%logfile%
dcomperm -ma set Administrators permit level:r,l >>%logfile%
dcomperm -ma set Administrator permit level:r,l >>%logfile%
dcomperm -ma set "Authenticated Users" permit level:r,l >>%logfile%
dcomperm -ma set "Anonymous Logon" permit level:r,l >>%logfile%
dcomperm -ma set Everyone permit level:r,l >>%logfile%
dcomperm -ma set Interactive permit level:r,l >>%logfile%
dcomperm -ma set Network permit level:r,l >>%logfile%
dcomperm -ma set System permit level:r,l >>%logfile%
echo
echo DCOM Access Permissions >>%logfile%
echo
dcomperm -da set Administrators permit level:r,l >>%logfile%
dcomperm -da set Administrator permit level:r,l >>%logfile%
dcomperm -da set "Authenticated Users" permit level:r,l >>%logfile%
dcomperm -da set "Anonymous Logon" permit level:r,l >>%logfile%
dcomperm -da set Everyone permit level:r,l >>%logfile%
dcomperm -da set Interactive permit level:r,l >>%logfile%
dcomperm -da set Network permit level:r,l >>%logfile%
dcomperm -da set System permit level:r,l >>%logfile%
echo >>%logfile%
echo DCOM Launch Permissions >>%logfile%
echo >>%logfile%
dcomperm -ml set Administrators permit level:rl,ll,la,ra >>%logfile%
dcomperm -ml set Administrator permit level:rl,ll,la,ra >>%logfile%
dcomperm -ml set "Authenticated Users" permit level:rl,ll,la,ra >>%logfile%
dcomperm -ml set "Anonymous Logon" permit level:rl,ll,la,ra >>%logfile%
dcomperm -ml set Everyone permit level:rl,ll,la,ra >>%logfile%
dcomperm -ml set Interactive permit level:rl,ll,la,ra >>%logfile%
dcomperm -ml set Network permit level:rl,ll,la,ra >>%logfile%
dcomperm -ml set System permit level:rl,ll,la,ra >>%logfile%
echo >>%logfile%
echo DCOM Launch Permissions >>%logfile%
echo >>%logfile%
dcomperm -dl set Administrators permit level:rl,ll,la,ra >>%logfile%
dcomperm -dl set Administrator permit level:rl,ll,la,ra >>%logfile%
dcomperm -dl set "Authenticated Users" permit level:rl,ll,la,ra >>%logfile%
dcomperm -dl set "Anonymous Logon" permit level:rl,ll,la,ra >>%logfile%
dcomperm -dl set Everyone permit level:rl,ll,la,ra >>%logfile%
dcomperm -dl set Interactive permit level:rl,ll,la,ra >>%logfile%
dcomperm -dl set Network permit level:rl,ll,la,ra >>%logfile%
dcomperm -dl set System permit level:rl,ll,la,ra >>%logfile%
echo >>%logfile%
echo >>%logfile%
echo Working on AQT Remote Agent permissions >>%logfile%
echo >>%logfile%
dcomperm -runas {25E8BB22-5C86-11D4-90DA-00104B3E51B1} "Interactive User" >>%logfile%
dcomperm -al {25E8BB22-5C86-11D4-90DA-00104B3E51B1} Default >>%logfile%
dcomperm -aa {25E8BB22-5C86-11D4-90DA-00104B3E51B1} Default >>%logfile%
echo >>%logfile%
echo >>%logfile%
echo Working on QTP Automation Server >>%logfile%
echo >>%logfile%
dcomperm -runas {A67EB23A-1B8F-487D-8E38-A6A3DD150F0B} "Interactive User" >>%logfile%
dcomperm -al {A67EB23A-1B8F-487D-8E38-A6A3DD150F0B} Default >>%logfile%
dcomperm -aa {A67EB23A-1B8F-487D-8E38-A6A3DD150F0B} Default >>%logfile%
echo >>%logfile%
echo >>%logfile%
echo Working on Tulip Remote Server >>%logfile%
echo >>%logfile%
dcomperm -runas {70396405-BE62-11D2-8F0B-00104B3E51B1} "Interactive User" >>%logfile%
dcomperm -al {70396405-BE62-11D2-8F0B-00104B3E51B1} Default >>%logfile%
dcomperm -aa {70396405-BE62-11D2-8F0B-00104B3E51B1} Default >>%logfile%
echo >>%logfile%
echo >>%logfile%
echo Working on WinRunner Remote Agent >>%logfile%
echo >>%logfile%
dcomperm -runas {0B171F02-F204-11D0-9398-0080C837F11F} "Interactive User" >>%logfile%
dcomperm -al {0B171F02-F204-11D0-9398-0080C837F11F} Default >>%logfile%
dcomperm -aa {0B171F02-F204-11D0-9398-0080C837F11F} Default >>%logfile%
echo >>%logfile%
echo >>%logfile%
echo Working on WinRunner Document object >>%logfile%
echo >>%logfile%
dcomperm -runas {CD70EDCE-7777-11D2-9509-0080C82DD192} "Interactive User" >>%logfile%
dcomperm -al {CD70EDCE-7777-11D2-9509-0080C82DD192} Default >>%logfile%
dcomperm -aa {CD70EDCE-7777-11D2-9509-0080C82DD192} Default >>%logfile%
echo >>%logfile%
echo >>%logfile%
echo Working on Vapi-XP object >>%logfile%
echo >>%logfile%
dcomperm -runas {FCB69899-EC52-4A7A-86DB-3655E9FDBA58} "Interactive User" >>%logfile%
dcomperm -al {FCB69899-EC52-4A7A-86DB-3655E9FDBA58} Default >>%logfile%
dcomperm -aa {FCB69899-EC52-4A7A-86DB-3655E9FDBA58} Default >>%logfile%
echo >>%logfile%
echo >>%logfile%
echo Working on Business Process Testing object >>%logfile%
echo >>%logfile%
dcomperm -runas {6108A56C-6239-41F6-8C0F-94D9CE0D4B61} "Interactive User" >>%logfile%
dcomperm -al {6108A56C-6239-41F6-8C0F-94D9CE0D4B61} Default >>%logfile%
dcomperm -aa {6108A56C-6239-41F6-8C0F-94D9CE0D4B61} Default >>%logfile%
echo >>%logfile%
echo >>%logfile%
echo Working on System Test Remote Agent >>%logfile%
echo >>%logfile%
dcomperm -runas {1B78CAE4-A6A8-11D5-9D7A-000102E1A2A2} "Interactive User" >>%logfile%
dcomperm -al {1B78CAE4-A6A8-11D5-9D7A-000102E1A2A2} Default >>%logfile%
dcomperm -aa {1B78CAE4-A6A8-11D5-9D7A-000102E1A2A2} Default >>%logfile%
echo >>%logfile%
echo >>%logfile%
echo Working on LoadRunner Specific Settings >>%logfile%
echo >>%logfile%
dcomperm -runas {E933439A-81A1-11D4-8EEE-0050DA6171E8} "Interactive User" >>%logfile%
dcomperm -al {E933439A-81A1-11D4-8EEE-0050DA6171E8} Default >>%logfile%
dcomperm -aa {E933439A-81A1-11D4-8EEE-0050DA6171E8} Default >>%logfile% 运行配置文件的操作步骤

1, go to the new add in page: http://qc1d.atlanta.hp.com/qcbin/addins.html ,and click the link : HP ALM Client Registration;

2,in the new page ,click the new link  : Register HP ALM Client;

3,after you register the HP ALM client again ,refresh the DCOM to make sure that the VAPI-XP DCOM had reconfigured correctly , you can run the command “dcomcnfg” from start Menu , While still in the Component Services window, navigate to Console Root -> Component Services -> Computers -> My Computer -> DCOM Config ,navigate to the “{FCB69899-EC52-4A7A-86DB-3655E9FDBA58}” to make sure that the local path had updated to the latest VAPI remote  executable  as blow:

QTP Test ,VAPI-XP Test,LR Test 和ALM 集成远程分布式执行遇到的“access is denied ” “unspecified error”问题-LMLPHP

4,run the attach file to reconfigure the VAPI DCOM object in the remote target host

5,rerun the VAPI test from your ALM client. I think it will ok.

 

好了,以上就就是所有的配置信息用于解决远程运行QTP或者是LR脚本报 Access is denied ” ,”unspecified error”。希望对大家有所帮助。如果又不太清楚的,可以联系我:[email protected] .QTP Test ,VAPI-XP Test,LR Test 和ALM 集成远程分布式执行遇到的“access is denied ” “unspecified error”问题-LMLPHP

05-11 13:25