浅谈自动化测试工具 QTP脚本的重用

开发 测试 自动化
本文主要介绍一款自动化测试的工具,QTP,他用于软件的功能测试和回归测试。希望对你有帮助,一起来看。

QTP全称Mercury QuickTest Professional,是一款自动化测试工具,用于软件的功能测试和回归测试。它能够录制用户行为,并自动进行重放、捕获及验证,可以代替测试人员去完成那些重复性高并且枯燥的工作。

录制用户行为,也就是录制测试脚本,所有录制的用户行为都能够追踪到脚本代码。脚本的重用作为测试自动化的一个方面,是指将一些通用的、固定的用户行为从测试脚本中提取出来,作为独立部分,在其它脚本中加以引用。这样,就避免了一些通用行为的重复录制,有利于测试框架的搭建。

本文将简单介绍Mercury QuickTest Professional 8.2中脚本的重用方法。

QTP中的Action

QTP中脚本可重用的最小单元是Action,录制的用户行为集合将以脚本代码的形式存放在Action中。当你录制脚本的时候,只有一个Action,录制的脚本也全部在这个Action中,可以将这个Action进行切割,提取通用脚本并模块化。

QTP提供四种操作Action的方式:

1、New Action:新建一个Action,可以在其中录制、编辑脚本;

2、 Split Action:将一个Aciton分割成两个Action;

3、 Copy of Action:复制一个Action,即创建一个副本。两个Action相互独立,修改其中任何一个,不会影响另一个;

4、 Call to Action:如同编程语言中的函数调用,测试脚本中也可以引用或调用一个可重用的Aciton,这个Action可以是任一测试脚本文件中声明为Reusable(可重用)的Action。注意:不允许在引用端修改被调用的Action,只能在原脚本文件中修改。

脚本重用示例

Call to Action是QTP重用脚本的核心,下面简单介绍一个使用这种方式来重用脚本的例子。

测试一个简单的B/S结构的办公自动化系统的常用功能。

大体流程为:登录系统―业务处理―退出系统。

其中登录系统和退出系统属于可重用性比较强的功能模块,如果系统允许同一用户同时在多台计算机上登录的话,可以单独建立一个脚本文件,将登录和退出录制成两个可重用的Action,以便重用。业务处理流程就比较多样了,它包括文稿审批、个人日志管理、请假申请等功能模块。

测试一个功能模块的完整用户行为包括登录系统,执行特定的业务流程,执行完毕后退出系统。可使用一个测试脚本文件测试一个特定的功能模块,系统登录和退出模块可以使用Call to Action方式进行重用,不需要在每个模块的测试中都进行录制。

具体步骤如下:

步骤1:录制系统登录和退出脚本。

新建login_out脚本文件,在Record and Run Setting选项卡中,选择IE方式并输入办公自动化系统的网址,点击OK进行录制。QTP将自动打开办公自动化系统的网页,输入用户名和密码登录系统,再退出系统。然后结束录制,QTP将自动生成脚本。

步骤2:使用Split Action方式将login_out脚本中的Action分割成login和logout两个Action。

login是系统登录部分的脚本,logout是退出部分的脚本。具体的分割步骤本文不作说明,读者可参阅QTP的使用手册。

步骤3:将login和logout设定为可重用。

打开两个Action的Action Properties对话框,点选Reusable action选项,点击OK后,两个Action便可以被其它脚本文件引用了。

步骤4:录制业务处理脚本。

按照步骤1新建process脚本文件进行任一功能模块的测试脚本录制。在登录系统进入主界面后,按下工具列中的Record按钮,开始录制相关的业务操作,完成后再按下Stop按钮结束录制,并将Action命名为processing。

这样,process文件包含一个Action名为processing,其中录制了一段系统业务处理流程的测试脚本,但并未包含用户的登录和退出行为,不能直接自动执行,需要手工登录系统进入主界面后,才能执行。

步骤5:调用login和logout,完善process脚本。

打开process脚本,在菜单中选择Insert―Call to Existing Action选项,打开Select Action对话框,选择login_out脚本,选择login,点击OK进行Action的引用。用同样的方法应用logout。注意,调整三个Action的顺序为login―processing―logout。

完成以上五个步骤后,可以执行process脚本进行调试。

小结

脚本重用作为测试自动化的一个方面,缩短了脚本的编制时间、利于脚本的架构与维护。在脚本文件中直接调用可重用的脚本,避免了重复录制,节省时间。

自动化测试人员可以把一个Action中的用户行为分割成很多Action,从中提取出重用性高的设置为Reusable action保存在单独的文件中,并利用这些Reusable action来灵活地架构自己的测试脚本。当一个可重用的脚本需要修改时,仅需在它的源文件中进行改动,调用它的脚本都会随之改动,方便了脚本的维护。

【编辑推荐】

  1. 20款非常棒的网站可用性测试工具
  2. 高性能WEB开发之Web性能测试工具推荐
  3. 分布式自动化测试工具
  4. 【瞭望】软件测试工具发展展望
  5. 使用测试工具iPerf监控无线网络性能
责任编辑:于铁 来源: 51Testing软件测试网采编
相关推荐

2011-05-31 17:35:45

测试自动化QTP

2010-08-10 14:34:37

QTPFlex

2012-12-24 22:54:31

2014-11-12 09:24:00

2011-11-18 09:11:21

Web

2011-05-31 18:17:07

分布式测试

2011-05-30 17:50:23

分布式测试

2022-07-04 09:00:36

Playwright自动化测试工具

2022-06-02 09:00:00

人工智能工具自动化测试

2022-08-08 07:35:37

云测试工具云存储云计算

2009-07-06 10:08:03

Flex自动化

2022-12-04 23:52:11

iOS自动化工具

2015-04-15 13:30:54

2010-08-10 14:25:42

SilkTestFlex

2021-12-17 10:01:52

人工智能测试工具

2012-03-29 10:57:12

Web自动化测试

2016-11-11 14:34:46

开源开源工具

2020-04-09 13:16:48

自动化工具脚本

2010-08-10 14:18:15

RationalFunFlex

2019-01-23 09:00:00

点赞
收藏

51CTO技术栈公众号