QA Wizard使用指南

发表于:2007-4-18 16:02

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:sincky.zhang    来源:www.51testing.com

【摘要】QA Wizard可测试windows应用程序、基于web的程序和 .net程序,本文档着重介绍对前两者的测试,关于.net程序的测试,操作方法也相似,但因为本人不懂.net,就不便多说,有兴趣的朋友们可自行研究。

【关键词】自动化测试,GUI测试,Seapine,系统测试

  • qawizard的基础使用

安装QA Wizard不管从国内众多下载网站还是seapine官方网站下载的QA Wizard,运行qawizardinstall.exe即可,这里不多废话。注意安装后要注册。

运行QA Wizard启动后的qa wizard如图:

第一个选项是创建一个新工作台、项目或者脚本,qawizard靠工作台来管理项目和脚本。

第二个是打开实例脚本程序,就是我们上边说的几类实例程序。

注意:如果你选择run-time模式启动qawizard,只能打开一个工作台。

QA Wizard的界面:

此处不多讲,反正这类软件的界面都大同小异,自我感觉它和rational xde tester差不多,大家逐渐熟悉一下就可使用了。值得一提的是,qawizard有个formula bar,用来编辑一些函数或公式表达式,你可以把它和excel里的那个栏对待。另外,这个formula bar在run-time模式下没有。

脚本视窗:如图,这就是我说的qawizard一个最大特征——没有脚本代码,完全是设置操作的。

我们看到脚本以列的形式来显示,前三列是必须有的,分别是step#、action type和object type,其他列是可选的。点击action type和object type名字上的黑色向下三角形,弹出下拉单,用来过滤显示的内容。

Step#-脚本步骤序号

Action Type-执行的动作

Object Type-执行动作的对象

Window-测试所在的浏览器或窗口

Text-对象的文本,比如下拉单的选项

Alias-对象的别名

Description-对该步脚本的描述

对多窗口的控制:qawizard手册里一堆解释,归根一句话,就是在多个窗口或浏览器下自动识别哪个窗口执行下一步的操作,不会出现象winrunner或robot里弹出异常窗口时报出一堆警告或干脆顿住停滞。

项目视窗:包括如下几项——

Workspace-组织项目和脚本

Projects-组织脚本、数据库和项目变量

Scripts-创建测试用例

Database Environment-和外部数据创建连接

Project Variables-存储项目中用到的数据变量

Assemblies-是很多类的集合,用于.net程序的动态链接库

其他关于工具的界面及菜单项就不多说了,一是qawizard和其他同类工具的界面差不多,二是不想浪费时间介绍这些界面,而是重点放在介绍它的使用上,这也是我们最关心的。

关于脚本:qawizard有两种创建脚本的方式,一是录制对测试程序的动作,二是手工按照步骤来设置脚本。

创建脚本的几个原则:

一是创建简短并以任务为基准的脚本,以方便管理和更新

二是对测试程序创建基本任务的脚本,不要盲目的对任何操作都想用脚本完成

三是创建的脚本可重复利用,并有期望测试结果

脚本的生命周期:每个脚本都应该有如下的生命周期:

预录制-指定脚本的录制和回放设置

录制-对测试程序执行用户的操作动作

修改-通过编辑步骤和添加语句修改脚本

执行-运行脚本,检查期望的测试结果

配置windows应用程序:选择tool-applications,从如图的下拉菜单选择windows,再点击画圈图标(添加应用程序)

输入应用程序名称,选择run,再输入程序路径,设置工作路径,点击ok。

创建脚本:录制脚本之前先创建空脚本,在项目视窗选择要添加脚本的项目,选择project-add new script,弹出添加新脚本对话框,如图:

输入名称及路径,ok!

右键点击创建的脚本,选择属性,弹出如图对话框,可为其添加描述信息:

录制脚本:1)从项目视窗选择创建的脚本sinckyscript 2)选择菜单的script-record,弹出选择应用程序对话框:

3)点击record,应用程序启动,在程序上执行用户操作,qawizard会全部记录下来;对于web程序,我们说过不必计较多个窗口同时弹出的情况,qawizard会自动记录每个窗口的属性,并为其编号,回放时不会错位。

运行管理器:qawizard的运行管理器管理脚本的执行过程,让用户选择执行哪些脚本,脚本的执行顺序,以及回放的模式、脚本执行次数等,甚至还可以设置脚本异常处理和cookie缓存。

回放模式:qawizard提供两种回放模式,交互式interactive和非交互式silent,前者要求脚本回放时不允许用户执行其他操作,知道全部脚本执行结束;后者则相反。

创建脚本组:将几个集体运行的脚本设置成脚本组,类似其他工具的suite。点击run按钮,弹出运行管理器,点击添加组按钮,如图的画圈图标,输入组名,ok!

然后点击箭头图标往组里加脚本,可以从任何项目中往组里加脚本。

异常处理:这里说说qawizard里一个重要概念,就是异常处理。脚本运行时,难免发生些异常情况,出现异常时,我们一般希望qawizard捕获它,让脚本fail掉;但是有时也需要忽略掉这些异常,比如,程序在执行时突然弹出个对话框说你没权限访问这个页面,上边有个ok按钮,这种情况下我们可以让qawizard去点击ok按钮,从而保证脚本继续进行。

如何设置异常?1)选择tool-exception handle,弹出异常管理器2)点击new按钮,弹出新建异常对话框3)输入异常名称,从路径列表选择该异常的存放路径;也可点击manage paths按钮进入路径管理器,新建路径

4)点击ok,弹出异常处理窗口,如图;该窗口本来什么也没有,点击图中画圈的按钮,它用来捕获页面的异常对象,鼠标点住不放,到测试程序页面定位到你认为异常的对象松开,之后这个对象的属性被分散到如图所示的面板里。我们这个例子是假设程序遇到图中对话框时忽略异常,让程序去点击ok。

5)点击action选项,从左侧选择【确定】,点击蓝色加号,该项加到右侧,意思是让qawizard去点击异常对象里的确定按钮。保存并关闭。

运行脚本:在刚才的运行管理器中,从左侧往右侧添加执行的脚本,或者以组的形式运行。右侧脚本如果选择update preview,qawizard会自动更新脚本中的控件,如图片等。

选择script execution标签,点击repeats,可编辑该脚本执行次数;选择silent mode,可执行非交互式运行模式;点击exceptions,可从下拉单中选择异常处理;点击caching可从下拉单中选择是否从脚本中删除cache;点击error handle,设置脚本出现错误时停止活着继续执行。

点击run开始运行脚本。

这里有个save batch按钮,是将该次脚本保存成批处理文件,以便让window的计划任务或其他工具来批量执行,设置很简单,一目了然,如下图:

关于测试报告:脚本运行结束,qawizard自动生长一份报告,报告记录脚本的测试结果,显示pass或fail,还可以通过报告查看脚本执行时间及哪一步骤出错。报告是xml格式。

默认的报告显示全部信息,用户可对报告内容自定义。

Qawizard可以和TestTrack Pro集成,它是seapine公司的缺陷管理工具,引起脚本执行失败的错误可以自动或手动提交到TestTrack Pro中。

报告包括工作台、项目和脚本名,还有脚本运行时间、总共步骤、多少步通过、多少步失败,以及应用程序和运行模式,点击summary按钮可将缺陷提交到TestTrack Pro里,点击如图的按钮可扩展报告内容。

扩展后的报告如下,点击action type的蓝色下拉图标,可过滤显示的内容。

报告的内容不多介绍,页面直观易懂,朋友们试一下就什么都明白了。

修改脚本:录制完成的脚本,我们通常要对其修改;对于qawizard的脚本,我们可添加、编辑、删除脚本的步骤,步骤包括命令、说明、语句以及数据库语句,另外,也可对脚本增加变量和检查点,甚至数据驱动脚本。

修改脚本步骤:可直接对某一步的脚本进行拖放操作,拖到新位置即可自动完成步骤序号的更新。另外,也可通过复制、剪切、粘贴来修改脚本步骤的顺序。

添加脚本步骤:可以在脚本的任何步骤为脚本添加新的步骤,方法是选定该步脚本,点击record按钮,然后选择该脚本,让它先执行到你选定的步骤,此时qawizard会提示你运行完毕,是否在此基础上录制新脚本,选择yes,就可以录制了。

注释脚本:选定一步脚本,右键选择add comment line,在description区域输入一些注释信息即可,qawizard运行时不会执行注释行。

延迟脚本执行:测试程序某对象的出现有延迟,可能造成脚本运行失败;这种情况下为其加延迟是个好办法。从菜单选择tools-options,选择scripts标签,从图中的画圈区域输入时间(秒)让qawizard等待到对象出现。注意这种控制限制于所有的脚本。

另一个办法是为特定脚本步骤添加延时命令;右键点击某一步脚本,选择add statement,选择instruction,在text里输入delay(5000),点击add即可。

也可以通过点击后边的浏览按钮,弹出function builder窗口,去寻找delay命令,如图:

第三个办法是点击某步骤,右键选择wait for object,qawizard创建一个for语句,右键点击for语句,选择edit statement,可对其参数进行修改。

添加脚本命令:选择脚本某步骤,右键选择add command,弹出添加命令对话框,选择即可。

添加命令后的操作取决于添加的命令类型,如果你选择添加一个鼠标点击命令,那么需要在对象预览窗口选择一个对象。之后添加的命令被加入脚本。

添加语句:再说一下添加语句的问题。Qawizard能添加语句来控制脚本的运行,例如添加一个循环语句运行一个步骤块(a block steps)来多次执行变量数据里的数据。选择脚本步骤,右键选择add statement,弹出添加语句对话框,选择要添加的语句,如果需要,还要指定语句的参数。点击add。

捆绑对象:测试程序的每个对象原则来说都有自己唯一的名字和文本标记,但有时未必如此,一些对象没有唯一的标记,会造成脚本回放时错误的对象或区域被选定,而对象的捆绑功能解决了这个问题。

选择含有你想要捆绑对象的脚本步骤,在对象预览视窗找到这个对象,让它可见。从工具栏点击element pointer,这个按钮用来在对象预览窗口选择元素。

在对象预览窗口选择需要捆绑的对象,弹出select html object对话框(windows程序里这个对话框叫做select element),点击ok关闭这个窗口。再看在element tree视窗里这个对象已被选定,并以层叠结构显示它和上下层对象的关系,点击这个对象的父级对象,父级对象以绿色框高亮显示,这样qawizard就会根据父级对象的唯一性找到该对象去实现操作。(这里对初学者挺困难的,还希望大家多练习,关键是找到能使该对象唯一的父级对象)

关于变量数据:变量数据是当你对应用程序执行输入或选择操作时,这些信息被保存的敌方,用户可以对变量数据进行修改。变量数据视窗显示了能修改的全部数据,点击某一步骤的脚本,该步脚本包含的数据在变量数据视窗被高亮显示,用户可在选定的单元格输入新的数据,或者用命令修改单元格内容。

记录变量数据:得到变量数据最简单方式是对程序执行动作改变程序的内容,这些数据都会自动记录在变量数据视窗里。

修改变量数据:变量数据是在录制脚本时捕获的,可以对这些数据进行删除、编辑或重计算操作。在变量数据视窗点击需要修改的单元,然后通过两种方式修改数据:函数构建器和公式栏。

添加脚本递归:1)在变量数据视窗,右键点击一行,选择add row,添加的新行和原行数据一样 2)改变这些值 3)脚本执行到此处会重复执行每组数据,包括新加的这行数据。

指定变量数据的类型:变量数据的类型有以下几种

number-整数或小数

date-日期格式的数据(年月日)

time-时间格式的数据(年月日和时间)

text-文本

currenty-货币值

percent-0到100的整数或小数

  • 右键点击单元格,选择format,弹出格式单元对话框

  • 选择一个类型,设置并ok。

加变量到脚本:qawizard记录了所有对象的属性,这些属性可被设置变量数据 1)选择一步脚本 2)点击该步脚本里object type的数据,弹出如图的语句属性窗口

  • 在相应行的variable列打勾,将该属性加到变量数据里。

使用函数构建器:qawizard提供的函数构建器是一个点击式的界面,让用户构建强大的操作数据以增强脚本的功能。右键选择变量数据的单元格选择function builder,如图:

从多级目录里选择命令,在上边的面板选择操作符,点击insert即可。

使用公式栏:用户还可以使用公式栏来修改变量数据单元格的数据,其功能类似于microsoft的excel:

点击画圈的等号按钮可弹出函数构建器。

修改链接:可以修改链接地址定位到其他网页地址。在脚本视窗里点击含有链接地址的object type单元格,弹出如下对话框:

在options标签里输入重新定位的网页地址,选择navigate from script。

检查点类型:qawizard包括五种类型的检查点,分别可以动态和静态设置;静态检查点是比较应用程序的属性值,图像、文本等;动态检查点是在脚本运行时捕获对象的属性值,例如每次访问一个web页面时某段文本都动态变化,动态检查点都能记录最新的文本。

Attributes-检查对象的属性,例如标题title或id

Format-检查格式属性,例如高度、位置

Contains-检查父对象是否包含指定的子对象

Child count-检查父对象是否包含指定数量的子对象

Focus-检查焦点是否落到指定的对象

添加检查点:可以用添加命令的方式添加检查点。1)选定添加检查点的脚本步骤(检查点会被加到该步的下一步)2)右键选择add command,弹出添加命令窗口 3)选择checkpoint,点击ok

  • 鼠标变成手形,移动到对象预览窗口,选择设定检查点的对象,检查点窗口弹开,该对象也高亮显示;从该窗口的object tree面板选择对象拖到右边的elements面板,以创建检查点,每个对象的属性在下边的面板里,如图。

  • 从check下拉单选择检查点类型,下边面板的内容也会根据选择的类型变化
  • 在下边面板的对象属性复选框里打勾,设置你要检查的内容
  • ok完成,返回到脚本视图

每种类型的检查点设置方法都如此;值得一提的是,每个对象的属性都有4种复选框,match case是执行区分大小写的搜索;regular expression是用正则表达式检查;variable是将本地的项目变量加到检查点,check是必选的,不然就不叫检查点了。

以上是本文档的第一部分,是qawizard的基础使用,有兴趣的朋友们可以装个qawizard自习演示一下,有问题可以留言给我,本人联系方式sinckyzhang@hotmail.com,感谢大家对sincky的鼓励,也希望大家从我的文档中多学点软件测试自动化的知识和技能,可以的话,也希望大家分享自己的成果,谢谢!

如果朋友们有需要,本人会编写后续的wizard高级使用文档,我看了下它的帮助,大概有以下几个主题:

  • 创建数据驱动脚本
  • 使用项目变量
  • 使用外部函数.NET SDK
  • 使用脚本语句
  • 对象的搜索功能
  • 管理缺陷
  • 配置项目的设置
  • 自定义测试报告
  • 和TestTrack Pro集成
  • 和source code control集成

希望大家多多访问我的两个blog,天行健,君子以自强不息!(http://blog.51testing.com/index.php?blogId=19)和地势坤,君子以厚德载物!(http://www.bonoy.com/blog/index.php?blogId=4)并多多留言,sincky也会为大家多多奉献原创测试资料和文章,共同推动中国软件测试行业的发展!

版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像。51testing软件测试网欢迎与业内同行进行有益的合作和交流,如果有任何有关内容方面的合作事宜,请联系我们

《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • xinyun99
    2007-8-09 12:55:55

    是否支持中日文软件?

  • ∮随风而去~
    2007-5-31 17:25:49

    还没玩过这个家伙哦~
    搞么事的哦~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号