收藏本站 收藏本站
积木网首页 - 软件测试 - 常用手册 - 站长工具 - 技术社区
软件测试 > QTP > 正文

首页 | 领域细分: 游戏测试 安全测试 手机测试 Web测试 | 技术研究: 单元测试 入门教程 用例设计 性能测试 功能测试 | 测试职场: 面试精选 职场发展 面试试题

测试管理: 配置及流程 - 需求管理 - 质量验收 - 缺陷管理 - 其它管理相关 | 开发语言: PHP技巧 - PHP基础 - PHP实例 - PHP错误代码

测试工具: LoadRunner JiRa QuickTestPro RoBot WinRunner TestDirector 其它测试工具 | 数据库: Mysql数据库 Oracle数据库 CSS/DIV基础 HTML基础

用对象模式实现QTP的远程调用

来源:互联网 日期:2013-09-28 07:30

  随着测试团队的不断增大,测试脚本的数量也日渐增多。相信很多有自动化项目经验的人都体会过,使用单个机器去运行所有脚本,会导致整个测试过程冗长而缺乏稳定性。而且,很多自动化测试的要求是一套脚本,多环境运行。当遇到项目所提供的测试周期经常,用例数量大,测试环境多这样的问题时,分步试运行就变得尤为重要。

  像Load Runner一样,我们需要一个Controler来发布测试命令,驱动其他Generator运行脚本,最后再将测试结果发回Controler汇总。

  说到这里,很多人自然会想到Quality Center。在QTP10.0中,增加了提供远程调用的Agent。在QC中,可以通过选择不同的主机,来控制具体某一台机运行指定的测试集。QC确实是QTP紧密捆绑的框架,但是特定的项目需求,光依赖QC是不够的,一大堆配置就已经够恼人的了。相信很多使用者都希望自己设计框架来满足项目的需要。

  那么下面讨论用对象模式实现QTP的远程调用,就可以满足这样的需求。代码很简单,以下是VBS示例:

Dim qtApp
Set qtApp=CreateObject("QuickTest.Application",\xx.xxx.xx.xxx)
qtApp.Launch
qtApp.Visible = True
qtApp.Open "\xx.xxx.xx.xxxTestaction",False
qtApp.Test.Run
qtApp.Quit
Set qtApp = nothing

  其中XX.XXX.XX.XXX代表远程运行机的IP地址,Testaction表示QTP工程文件的名称。

  光有这一小段代码还不够,接下来还有一些配置需要完成。

  1、控制机和测试机需要在同一个域中。

  2、保证控制机对测试机上的脚本储存文件夹,例如"Testaction"具有访问权限。

  3、修改测试机的DCOM配置。

  关于DCOM的配置如下:

  1、在开始-> 运行 中输入:dcomcnfg ,点击OK。

  2、在Component Services窗口中,打开图中所示的DCOM Config。

  3、选中QuickTest Professional Automation,右键打开Properties。

  4、切换到Security标签,在Launch and Activation项处选择,Customize,并点击Edit...

  5、在Permission窗口中点击添加按钮,在弹出的窗口中添加控制机在域中的管理员账号,并赋予操作权限。

  完成以上配置后,在控制机运行包含代码的VBS文件,远程测试机已经成功启动QTP并运行指定的测试集。

  有了这个方法,在自动化框架中便可以分布式的灵活指定不同的机器运行脚本了。

本周排行

别人正在浏览

强悍的草根IT技术社区,这里应该有您想要的!
Copyright © 2010 Gimoo.Net. All Rights Rreserved  京ICP备05050695号