随着测试团队不断扩大,QTP测试脚本不断增多,我们需要用多台电脑来运行QTP脚本,如果大家要登录到每台机器上去跑脚本,就太不方便了,而且各个机器上的脚本版本还有是否统一的问题。

如果我们能用一台电脑,指挥多台装了QTP的电脑运行脚本,岂不爽哉。

Mercury公司开发的Quanlity Center(简称QC),就可以实现这个功能。

要使用QC远程调用QTP,需要进行一系列的设置才能实现。在这篇文章里,我们把部署了QTP的电脑叫做“测试机”,把远程控制测试机的电脑叫做“控制台”,方便说明。

在测试机装完QTP后,还要安装一个插件:TDPlugin。这个插件的安装程序在安装盘的TDPlugin目录下面,安装后重启。

下面的设置非常重要,在QTP的安装指南中有详细的描述,我这里把几个重点说明一下。安装指南文件名是:QT_Install_Guide.pdf。具体内容在“Modifying DCOM Permissions Manually to Enable Remote QuickTest Execution”这一章。

先要设置windows登录用户的权限,指南文件的说明是假定测试机和控制台都已经加入域,其实不加入域也一样可行,只是设置有些不同。我们这里先讲没有加入域的情况。比如我们用ctrlUser这个用户登录控制台的windows,那么,就必须在测试机里也增加一个同名并且密码也相同的ctrlUser用户,并且把这个用户添加到系统管理员组。

如果两台机器都加入域,就更好办了,比如控制台的登录域用户是ctrlDomainUser,那么只要在测试机的系统管理员组里,添加这个用户即可,也就是说,登录控制台的用户拥有测试机用户的管理员权限。

下一步是设置测试机的防火墙,主要是开放135端口和添加AQTRmtAgent.exe代理程序到防火墙的例外列表中。

然后是设置DCOM的权限,这里的设置步骤比较多,在安装指南文档里面说的比较清楚,主要是把一些用户和组添加到允许访问的列表中。

设置完DCOM以后,我们打开QTP,在option中的Run分页,把“Allow other Mercury products to run tests and components”选中。

好,现在打开一个Test,然后将QTP和QC连接,把这个Test保存到QC上面。在控制台上登录QC,新建一个测试集,把刚才那个Test加入这个测试集。然后在“主机管理器”里面,把测试机的ip添加进来。回到测试集窗口,把这个Test的“计划主机名”指定为测试机的IP,好,现在运行测试集就大功告成了。

这时测试机的QTP会自动启动,run这个Test,run结束以后,测试结果会自动保存在QC服务器上,我们可以在任意电脑上查看测试结果。