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

大家都知道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的权限。告诉你,这个完全没必要):

For the investigation about remote QTP test or VAPI-XP test performed from PCs ,some info as blow(We call the ALM browser execution host with’ host 1’,and called the planning run the test with ‘host 2’):

For VAPI-XP type test , as blow:

1,’Host 1 ‘ logged with administrator password L0ngh)rn, ‘Host 2’ logged from console with qatest password L0ngh)rn, VAPI-test running status will show from vsphere console;

2,’Host 1’ logged with administrator password L0ngh)rn,’Host 2’ logged from console with qatest password L0ngh)rn, and ‘Host 2’ had not logged with user Administrator, the VAPI-TEST will run from console with user qatest;

3, ’Host 1’ logged with administrator password 123,’Host 2’ logged from console with qatest password L0ngh)rn, and ‘Host 2’ had not logged with user Administrator, the VAPI-TEST will show error message “The server process could not be started because the configured identity is incorrect. Check the username and password”.

4,’Host 1’ logged with alter password L0ngh)rn,’Host 2’ logged from console with qatest password L0ngh)rn, and ‘Host 2 ’ had not logged with user administrator, the VAPI-TEST will show “access is denied”;

For QTP type test ,as blow:

1,’Host 1’ logged with qatest password L0ngh)rn ,’Host 2’ logged from console with Administrator password L0ngh)rn,and ‘Host 2’ had not configured these DCOM objects(as default):

   AQTRmtAgent

  QuickTest Professional Automation

TlpRmtServer

The QTP test can run from the ALM ;

2,Some other validation as the VAPI-XP script .

So all in all ,if we want to run any QTP Test or VAPI-XP test ,it’s better to make sure that the ALM execution host and running host had logged with the same user ID and user password .

If not ,maybe we need to create a new account in the host and for the QTP test we also need to configure these DCOM :   AQTRmtAgent,QuickTest Professional Automation,TlpRmtServer .

Find something as blow:

· For QTP type test ,we can execute the test from our PCs, before we can run the QTP test we need to configure the remote execute host with the correct DCOM and turning off the firewall. But all these we had done in our every hosts. So we no need to configure anything in the planning run host .what we need to do is using FQDN when we execute the ALM test from ALM browser:

clip_image002

      As we had run the QTP DCOM setting before ( from start menu->HP Quick test Professional ->Tools->Additional Installation requirements) ,so all the DCOM for QTP (AQTRmtAgent, QuickTest Professional Automation,TlpRmtServer ) had been modified as we need so the ALM can run the remote QTP test from local PC;

· For VAPI-XP type test, we can execute the test from our PCs, but we need to make sure that our PCs had logged the same credential   with the remote execute host(like here: pdeauto75.irl.hp.com).That’s mean your PCs need to create two same accounts(‘qatest’ and ‘Administrator’ with the same password ‘L0ngh0rn’) and logged the system with this account ,and then log to ALM project ,run the VAPI-XP test, it will perform correctly. Whether we had configured the VAPI DCOM showed here:

clip_image004

       This configure seems did not make any sense for running the remote VAPI test .if your PC had not logged with qatest or Administrator ,it will show the error “Access is denied” And the password need to log with  ‘L0ngh)rn’ after you had configured the   above DCOM for VAPI-XP .

So for QTP type test we can performed from PCs with your network credential ,but for VAPI-XP test you need to make sure that the PC had logged with ‘qatest’ or ‘administrator’ account.

配置脚本文件                                                                  

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

SET logfile="C:TempRunDCOM.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:

clip_image002[4]

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”。希望对大家有所帮助。如果又不太清楚的,可以联系我:alterhu2020@gmail.com .Smile

原文地址:https://www.cnblogs.com/seniortestingdev/p/3190934.html