根据自己的实际操作,并结合网上给定的一些方法,终于搞定了在QC上远程执行QTP脚本的问题。
出现“RPC服务器不可用”或“The RPC server is unavailable”这种问题,请仔细检查以下各种情况:
1.需要加入域!服务器和客户端都需要加入同个域,但是我这边经过实际操作,发现客户端系统如果是Win7不加入域也能执行,WinXP系统必须加入域!(注:用的是win 7企业版,其它版本有待验证)
2. 启动服务器RPC服务。方法:控制面板-管理工具-服务-“Remote Procedure Call(RPC)”,启动一下(自动),服务状态“启动”;同时要保证执行机中的Server和Workstation服务已启动。
3.服务器端IIS没装。解决:安装IIS。以2000系统为例,控制面板-添加删除程序-添加删除windows组件-“Internet 信息服务(IIS)”打一下勾,下一步……
4.服务器里的QTP,需要设置为允许其他调用。
5.关闭防火墙
6.设置QC的代理服务(SystemTest Agent),用户名、密码和域,其中用户名和密码就是服务器的登录帐号和密码。
7.DCOM配置,开启服务器中的“DCOM Server Process Launcher”服务,设置启动类型为“自动”,需要重新启动系统。
(1)运行 -> dcomcnfg.exe -> 组件服务 -> 计算机 -> 我的电脑,右键“属性”,选中“COM 安全”选项卡,将“访问权限”和“启动和激活权限”设置添加Everyone用户,并设置远程启动和远程激活权限为允许。
(2)然后分别右键打开DCOM配置下面的AQTRmtAgent、QuickTest Professional Automation和TlpRmtServer组件属性,将身份验证级别设置为“无”,将“安全”选项卡下面的“访问权限”和“启动和激活权限”自定义,添加Everyone用户,并设置远程启动和远程激活权限为允许。在身份“标识”选项卡下面选择“交互式用户”。
8.NT的GUEST用户不能禁用
9.如果执行状态出现“未指定的错误”,这是由于交互式用户,QTP远程桌面登录过服务器引起的,需要重新注销服务器,然后不要用远程桌面登录服务器,需要在服务器本机上登录系统。
10.如果执行状态出现“拒绝访问.”,请仔细查看服务器日志事件信息,例如我这边出现过“应用程序-特定 权限设置未将 COM 服务器应用程序(CLSID 为
{6108A56C-6239-41F6-8C0F-94D9CE0D4B61}
)的 远程 激活 权限授予用户 NT AUTHORITY\ANONYMOUS LOGON SID (S-1-5-7)。”这样的错误只要找到DCOM组件下面的{6108A56C-6239-41F6-8C0F-94D9CE0D4B61},将“安全”选项卡下面的“访问权限”和“启动和激活权限”自定义,添加ANONYMOUS LOGON用户,并设置远程启动和远程激活权限为允许。
总之一句话,出现问题查看系统日志,根据提示信息去解决问题