资源描述
QTP教程
目录
目录 1
1 QTP 简介 2
1.1 自动化测试的好处 2
1.2 QuickTest工作流程 2
1.3 QTP程序界面 3
1.4 Mercury Tours 示范网站 5
2 录制/执行测试脚本 5
2.1 录制前的准备 6
2.2 录制测试脚本 6
2.2.1 录制测试脚本 6
2.2.2 分析录制的测试脚本 8
2.3 执行测试脚本 10
2.3.1 执行脚本出现错误 11
2.4 分析测试结果 11
3 建立检查点 12
3.1 QuickTest检查点种类 13
3.2 创建检查点 13
3.2.1 对象检查 13
3.2.2 网页检查 16
3.2.3 文字检查 17
3.2.4 表格检查 18
3.3 执行并分析使用检查点的测试脚本 20
4 参数化 24
4.1 参数化步骤和检查点中的值 24
4.1.1 参数化对象和检查点的属性值 24
4.1.2 参数化操作的值 25
4.2 参数种类 26
4.2.1 使用数据表参数 27
4.2.2 使用环境变量参数 28
4.2.3 使用随机数字参数 28
4.3 参数化测试脚本 29
4.3.1 定义参数 29
4.3.2 修正受到参数化影响的步骤 30
4.3.3 执行并分析使用参数的测试脚本 31
5 输出值 32
5.1 创建输出值 33
5.1.1 输出值类型 33
5.1.2 存储输出值 34
5.2 输出属性值 35
5.2.1 定义标准输出值 35
5.2.2 指定输出类型和和设置 36
5.3 在脚本中建立输出值 37
5.3.1 建立输出值 37
5.3.2 执行并分析使用输出值的测试脚本 40
1 QTP 简介
1.1 自动化测试的好处
如果你执行过人工测试,你一定了解人工测试的缺点,人工测试非常浪费时间而且需要投入大量的人力。使用人工测试的结果,往往是在应用程序交付前,无法对应用程序的所有功能都作完整的测试。
使用QuickTest可以加速整个测试的过程,并且建置完新版本的应用程序或网站后,可以重复使用测试脚本进行测试。
以QuickTest执行测试,就与人工测试一样。QuickTest会仿真鼠标的动作与键盘的输入,不过QuickTest比人工测试快了很多。
自动化测试的好处
快速
QuickTest执行测试比人工测试速度快多了。
可靠
QuickTest每一次的测试都可以正确的执行相同的动作,可以避免人工测试的错误。
可重复
QuickTest可以重复执行相同的测试。
可程序化
QuickTest可以以程序的方式,撰写复杂的测试脚本,以带出隐藏在应用程序中的信息。
广泛性
QuickTest可以建立广泛的测试脚本,涵盖应用程序的所有功能。
可再使用
QuickTest可以重复使用测试脚本,即使应用程序的使用接口已经改变。
1.2 QuickTest工作流程
1.录制测试脚本前的准备
在测试前需要确认你的应用程序及QuickTest是否符合测试需求?
确认你已经知道如何对应用程序进行测试,如要测试哪些功能、操作步骤、预期结果等。
同时也要检查一下QuickTest的设定,如Test Settings以及Options对话窗口,以确保QuickTest会正确的录制并储存信息。确认QuickTest以何种模式储存信息。
2.录制测试脚本
操作应用程序或浏览网站时,QuickTest会在Keyword View 中以表格的方式显示录制的操作步骤。每一个操作步骤都是使用者在录制时的操作,如在网站上点击了链接,或则在文本框中输入的信息。
3.加强测试脚本
在测试脚本中加入检查点,可以检查网页的链接、对象属性、或者字符串,以验证应用程序的功能是否正确。
将录制的固定值以参数取代,使用多组的数据测试程序。使用逻辑或者条件判断式,可以进行更复杂的测试。
4.对测试脚本进行调试
修改过测试脚本后,需要对测试脚本作调试,以确保测试脚本能正常并且流畅的执行。
5.在新版应用程序或者网站上执行测试脚本
通过执行测试脚本,QuickTest会在新本的网站或者应用程序上执行测试,检查应用程序的功能是否正确。
6.分析测试结果
分析测试结果,找出问题所在。
7.测试报告
如果你安装了TestDirector(Quality Center),则你可以将发现的问题回报到 TestDirector(Quality Center)数据库中。TestDirector(Quality Center)是Mercury测试管理工具。
1.3 QTP程序界面
在学习创建测试之前,先了解一下QuickTest的主界面。下图是录制了一个操作后QuickTest的界面。
在QTP界面包含标题栏、菜单栏、文件工具条等几个界面元素,下面简单解释各界面元素的功能:
n 标题栏,显示了当前打开的测试脚本的名称。
n 菜单栏,包含了QuickTest的所有菜单命令项。
n 文件工具条,在工具条上包含了以下几个按钮:
n 测试工具条,包含了在创建、管理测试脚本是要使用的按钮,如下图:
n 调试工具条,包含在调试测试脚本时要使用的工具条,如下图:
n 测试脚本管理窗口,提供了两个可切换的窗口,分别通过图形化方式和VBScript脚本方式来管理测试脚本。
n Data Table窗口,用于参数化你的测试。
n 状态栏,显示测试过程中的状态。
在上面上面简要介绍了QuickTest的主窗口,你可能对一些窗口元素到底是干什么的感到很困惑,在我们下面介绍QuickTest具体的功能时,会真正了解它们的作用。但在现在,应该尽可能的去熟悉这些界面元素,记住它们大概的功能,最好是花一些时间通过实际的操作来探索一下它们的功能,这对你能够顺利学习下面的内容是有帮助的。
1.4 Mercury Tours 示范网站
Mercury Tours示范网站是一个提供机票预订服务的网站,在本课程中,我们使用MI公司提供的Mercury Tours示范网站作为演示QuickTest各个功能的例子程序。
1.在开始使用Mercury Tours示范网站()之前,首先要在Mercury Tours网站上注册一个使用者账号。
2.Mercury Tours示范网站使用
要登录并使用Mercury Tours示范网站必须使用注册账号。
在使用网站时,从 [ Flight Finder ] 网页开始,按照画面上的指示预订机票。在Book a Flight 网页,无需填写真实的旅客信息,信用卡卡号等标示为红色的字段中添加虚拟数据就可以了。
3.结束订票动作
完成订票动作后,在 [Flight Confirmation] 网页上点选[LOG OUT] 按钮或是选择[SIGN-OFF]按钮。
4.关闭浏览器
现在知道如何使用Mercury Tours示范网站,就可以开始使用QuickTest录制测试脚本了。
2 录制/执行测试脚本
当浏览网站或使用应用程序时,QuickTest会纪录你的操作步骤,并产生测试脚本。当停止录制后,会看到QuickTest在Keyword View中以表格的方式显示测试脚本的操作步骤。
2.1 录制前的准备
在录制脚本前,首先要确认以下几项:
n 已经在Mercury Tours示范网站上注册了一个新的使用者账号。
n 在正式开始录制一个测试之前,关闭所有已经打开的IE窗口。这是为了能够正常的进行录制,这一点要特别注意。
n 关闭所有与测试不相关的程序窗口。
2.2 录制测试脚本
2.2.1 录制测试脚本
在这一节中我们使用QuickTest录制一个测试脚本,在Mercury Tours 范例网站上预定一张从纽约(New York)到旧金山(San Francisco)的机票。
1.执行QuickTest并开启一个全新的测试脚本
n 开启QuickTest,在“Add-in Manager”窗口中选择“Web”选项,点击“OK”关闭“Add-in Manager”窗口,进入QuickTest Professional 主窗口。
n 如果QuickTest Professional 已经启动,检查“Help>About QuickTest Professional”查看目前加载了那些add-ins。如果没有加载“Web”,那么必须关闭并重新启动QuickTest Professional,然后在“Add-in Manager”窗口中选择“Web”。
n 如果在执行QuickTest Professional时没有开启“Add-in Manager”则点击“Tool>Options”,在“General”标签页勾选 “Display Add-in Manager on Startup”,在下次执行QuickTest Professional 时就会看到“Add-in Manager”窗口了
2.开始录制测试脚本
选中“Test>Record”或者点选工具栏上的“Record”按钮。打开“Record and Run Settings”对话窗口:
在“Web”标签页选择“Open the following browser when a record or run session begins”
在“Type”下拉列表中选择“Microsoft Internet Explorer”为浏览器的类型;在“Address”中添加“ 这样,在录制的时候,QuickTest会自动打开IE浏览器并连接到Mercury Tours 范例网站上。
现在我们在切换到“Windows Application” 标签页,如下图所示:
如果选择“Record and run test on any open Windows-based application”单选按钮,则在录制过程中,QuickTest会记录你对所有的Windows程序所做的操作。如果选择“Record and run on these application(opened when a session begins)”单选按钮,则在录制过程中,QuickTest只会记录对那些添加到下面“Application details”列表框中的应用程序的操作(你可以通过“Add”、“Edit”、“Delete”按钮来编辑这个列表)。
我们选择第二个单选按钮。因为我们只是对Mercury Tours 范例网站进行操作,不涉及到Windows程序,所以保持列表为空。
点击“确定”按钮,开始录制了,将自动打开IE浏览器并连接到Mercury Tours 范例网站上。
3.登录Mercury Tours 网站
在用户名和密码输入注册时使用的账号和密码,点击“Sign-in”,进入“Flight Finder”网页。
4.输入订票数据
输入以下订票数据:
Departing From:New York
On:May 14
Arriving In:San Francisco
Returning:May 28
Service Class:Business class
其他字段保留默认值,点击“CONTINUE”按钮打开“Select Flight”页面。
5.选择飞机航班
可以保存默认值,点击“CONTINUE”按钮打开“Book a Flight”页面。
6.输入必填字段(红色字段)
输入用户名和信用卡号码(信用卡可以输入虚构的号码,如8888-8888)。
点击网页下方的“SECURE PURCHASE”按钮,打开“Flight Confirmation”网页。
7.完成定制流程
查看订票数据,并选择“BACK TO HOME”回到Mercury Tours网站首页。
8.停止录制
在QuickTest工具列上点击“Stop”按钮,停止录制。
到这里已经完成了预定从“纽约-旧金山”机票的动作,并且QuickTest已经录制了从按下“Record”按钮后到“Stop”按钮之间的所有操作。
9.保存脚本
选择“File>Save”或者电机工具栏上的“Save”按钮,开启“Save”对话窗口。选择的路径,填写文件名,我们取名为Flight。点击“保存”按钮进行保存。
通过以上九个步骤,我们录制了一个完整的测试脚本—预定从纽约到旧金山的机票。
2.2.2 分析录制的测试脚本
在录制过程中,QuickTest会在测试脚本管理窗口(也叫Tree View窗口)中产生对每一个操作的相应记录。并在Keyword View中以类似Excel工作表的方式显示所录制的测试脚本。当录制结束后,QuickTest也就记录下了测试过程中的所有操作。测试脚本管理窗口显示的内容如下图所示:
在Keyword View中的每一个字段都有其意义:
n Item:以阶层式的图标表示这个操作步骤所作用的组件(测试对象、工具对象、函数呼叫或脚本)。
n Operation:要在这个作用到的组件上执行的动作,如点击、选择等。
n Value:执行动作的参数,例如当鼠标点击一张图片时是用左键还是右键。
n Assignment:使用到的变量。
n Comment:你在测试脚本中加入的批注。
n Documentation:自动产生用来描述此操作步骤的英文说明。
脚本中的每一个步骤在Keyword View中都会以一列来显示,其中用来表示此组件类别的图标以及步骤的详细数据。
下面我们针对一些常见的操作步骤作详细说明:
步骤
说明
Action1是一个动作的名称
Welcome:Mercury是被浏览器开启的网站的名称
Welcome:Mercury Tours是网页的名称
userName是edit box的名称
Set是在这个edit box上执行的动作
jojo是被输入得值
password是edit box的名称
SetSecure是在这个edit box上执行的动作,此动作有加密的功能
446845bf84444adc…是被加密过的密码
Sign-In是图像对象的名称
Chick是在这个图像上执行的动作
41,4则是这个图像被点击的X,Y坐标
2.3 执行测试脚本
当运行录制好的测试脚本时,QuickTest会打开被测试程序,执行你在测试中录制的每一个操作。测试运行结束后,QuickTest显示本次运行的结果。接下来,我们执行在上一节中录制的Flight测试脚本。
1.打开录制的Flight测试脚本。
2.设置运行选项。点击“Tool>Options”打开设置选项对话框,选择“Run”标签页,如下图:
如果要将所有画面储存在测试结果中,在“Save step screen capture to results”选项中选择“Always”选项。一般情况下我们选择“On error”或“On error and warning”表示在回放测试过程中出现问题时,才保存图象信息。在这里我们为了更多的展示QuickTest的功能,所以选择使用“Always”选项。
3.在工具条上点击“Run”按钮,打开“Run”对话框:
询问要将本次的测试运行结果保存到何处。选择“New Run results folder”单选按钮,设定好存放路径(在这使用预设的测试结果名称)。
4.点击“OK”按钮开始执行测试。
可以看到QuickTest按照你在脚本中录制的操作,一步一步的运行测试,操作过程与你手工操作时完全一样。同时可以在QuickTest的Keyword View中会出现一个黄色的箭头,指示目前正在执行的测试步骤。
2.3.1 执行脚本出现错误
如果在执行测试的时候出现错误,会显示一个错误信息对话框?
2.4 分析测试结果
在测试执行完成后,QuickTest会自动显示测试结果窗口,如下图所示:
在这个测试结果窗口中分二个部分显示测试执行的结果
n 左边显示Test results tree,以阶层图标的方式显示测试脚本所执行的步骤。可以选择“+”检查每一个步骤,所有的执行步骤都会以图示的方式显示。可以设定QuickTest以不同的资料执行每个测试或某个动作,每执行一次反复称为一个迭代,每一次迭代都会被编号(在上面的例子中只执行了一次迭代)。
n 右边则是显示测试结果的详细信息。在第一个表格中显示哪些迭代是已经通过的,哪些是失败的。第二个表格是显示测试脚本的检查点,哪些是通过的,哪些是失败的,以及有几个警告信息。
在上面的测试中,所有的测试都是通过的,在脚本中也没有添加检查点(有关检查点的内容我们将在以后的课程中学习)。接下来我们查看QuickTest执行测试脚本的详细结果,以及选择某个测试步骤时出现的详细信息。
在树视图中展开“Flight Iteration 1(Row 1)>Action1 Summary>Welcome Mercury Tours>Find a Flight: Mercury>”,选择“ "fromPost":Select "New York" ”。
在这个测试结果窗口中显示三个部分,分别是:
n 左边是Test results tree:展开树视图后,显示了测试执行过程中的每一个操作步骤。选择某一个测试步骤,会在右边区域显示相应的信息。
n 右上方是Test results detail:对应当前选中的测试步骤,显示被选取测试步骤执行时的详细信息。
n 右下方是Active Screen:对应当前选中的测试步骤,显示该操作执行时应用程序的屏幕截图。
当选中test results tree上的网页图示,会在“Active Screen”中看到执行时的画面。当选中test results tree上的测试步骤(在某个对象上执行某个动作),除了显示当前时的画面外,对象还会被粉色的框框框住。在上面的例子中,在“Active Screen”中点击被框住的“Departing From”下拉菜单,会显示其他的选项。
3 建立检查点
通过上一章的学习,我们已经掌握了如何录制、执行测试脚本以及查看测试结果。但是我们只是实现了测试执行的自动化,没有实现测试验证的自动化,所以这并不是真正的自动化测试。在这一章我们学习如何在测试脚本中设置检查点,以验证执行结果的真确性。
“检查点”是将指定属性的当前值与该属性的期望值进行比较的验证点。这能够确定网站或应用程序是否正常运行。当添加检查点时, QuickTest 会将检查点添加到关键字视图中的当前行并在专家视图中添加一条“检查检查点”语句。运行测试或组件时, QuickTest 会将检查点的期望结果与当前结果进行比较。如果结果不匹配,检查点就会失败。可以在“测试结果”窗口中查看检查点的结果。
3.1 QuickTest检查点种类
首先我们了解一下QuickTest支持的检查点种类,如下表所示,QuickTest支持以下检查点:
检查点类型
说明
范例
标准检查点
检查对象的属性
检查某个按钮是否被选取
图片检查点
检查图片的属性
检查图片的来源文件是否是正确的
表格检查点
检查表格的内容
检查表格内的内容是否是正确对的
网页检查点
检查网页的属性
检查网页加载的时间或是网页是否含有不正确的链接
文字/文字区域检查点
检查网页上或是窗口上出现的文字是否正确
检查登陆系统后时候出行登陆成功的文字
图像检查点
提取网页和窗口的画面检查画面是否正确
检查网页或者网页的一部分是否如期显示
数据库检查点
检查数据库的内容时候正确
检查数据库查询的值是否正确
XML检查点
检查XML文件的内容
XML检测点有两种—XML文件检测点和XML 应用检测点。XML文件检测点用于检查一个XML文件;XML 应用检测点用于检查一个Web页面的XML文档。
你可以在录制测试的过程中,或录制结束后,向测试脚本中添加检测点。下面我们学习如何在测试脚本上建立检查点。
3.2 创建检查点
打开Flight测试脚本,将脚本另存为“Checkpoint”测试脚本。我们在Checkpoint测试脚本中创建4个检查点,分别是:对象检查、网页检查、文字检查以及表格检查。
3.2.1 对象检查
通过向测试或组件中添加标准检查点,可以对不同版本的应用程序或网站中的对象属性值进行比较。可以使用标准检查点来检查网站或应用程序中的对象属性值。标准检查点将对录制期间捕获的对象属性的预期值,与运行会话期间对象的当前值进行比较。
首先在Checkpoint测试脚本上添加一个标准检查点,这个检查点用以检查旅客的姓氏。
创建标准检查点:
1.打开Checkpoint测试脚本。
2.选择要建立检查点的网页
在QuickTest的视图树中展开“Action1>Welcome: Mercury Tours>Book a Flight: Mercury ”,由于输入使用者姓氏的测试步骤是 “passFirst0”这个步骤,所以要选择这个步骤的下一个测试步骤,以便建立检查点。如下图所示:
3.建立标准检查点
对“Active Screen”中的First Name 编辑框点击鼠标右键,显示插入选择点的类型。
选择“Insert Standard Checkpoint”选型,显示“Object Selection-Checkpoint Properties”对话窗口:
确保当前的焦点定位在“WebEdit: passFirst0”上,点击“OK”按钮,弹出如下的窗口:
在检查点属性窗口会显示将查点的属性:
n Name:将查点的名称
n Class:检查点的类别,WebEdit表示这个检查点是个输入框
n “Type”字段中的“ABC”图标:表示这个属性的值是一个常数
对于每一个检查点,QuickTest会使用预设的属性最为检查点的属性,下表说明这些预设的属性。
属性
值
说明
html tag
INPUT
HTML原始码中的INPUT标签
innertext
在这个范例中,innertext只是空的,检查点会检查当执行时这个属性是不是空的
name
passFirst0
passFirst0是这个编辑框的名称
type
text
text是HTML原始码中INPUT对象的类型
value
姓氏(录制脚本是输入的姓氏)
在编辑框中输入的文字
我们接受预设的设定值,点击“OK”。QuickTest会在选取的步骤之前建立一个标准检查点。
4.在工具栏上点击“Save”保存脚本。
通过1-4的步骤,添加一个标准检查点的操作就此结束。
3.2.2 网页检查
我们在Checkpoint测试脚本中再添加一个网页检查点,网页检查点会检查网页的链接以及图像的数量时候与当前录制时的数量一致。网页检查点只能应用于Web页面中。
创建网页检查:
1.选择要建立检查点的网页
展开“Action1>Welcome: Mercury Tours”选择“Book a Flight: Mercury”页面,在“Active Screen”会显示相应的页面。
2.建立网页检查点
在“Active Screen”上的任意地方点击鼠标右键,选取“Insert Standard Checkpoint”,开启“Object Selection-Checkpoint Properties”对话窗口(由于选择的位置不同,对话窗口显示被选取的对象可能不一样)。
选择最上面的“Page:Book a Flight: Mercury”,并点击“OK”按钮确认,将打开“Page Checkpoint Properties”对话框。
当执行测试时,QuickTest会检查网页的链接与图片的数量,以及加载的时间,如同对话窗口上方所显示的那样。
QuickTest页检查每一个链接的URL以及每一个图片的原始文件是否存在。
接受默认设定,点击“OK”。QuickTest会在Book a Flight: Mercury 网页上加一个网页检查。
4.在工具栏上点击“Save”保存脚本。
3.2.3 文字检查
在这一节中我们学习建立一个文字检查点,检查在“Flight Confirmation”网页中是否出现“New York”?
建立文字检查点:
1.确定要建立检查点的网页
展开“Action1>Welcome: Mercury Tours”选择“Flight Confirmation: Mercury”页面,在“Active Screen”会显示相应的页面。
2.建立文字检查点
在“Active Screen”中选择在“Departing”下方的“New York”。
对选取的文字按下鼠标右键,并选取“Insert Text Checkpoint”打开“Text Checkpoint Properties”对话窗口。
当“Checked Text”出现在下拉式清单中时,在“Constant”字段显示的就是选取的文字。这也就是QuickTest在执行测试脚本时所要检查的文字。
3.点击“OK”关闭窗口。
QuickTest会在测试脚本上加上一个文字检查点,这个文字检查点会出现在“Flight Confirmation: Mercury”网页下方。
4.在工具栏上点击“Save”保存脚本。
3.2.4 表格检查
通过添加表检查点,可以检查应用程序中显示的表的内容。通过向测试或组件中添加表检查点,可以检查表的单元格中是否显示了指定的值。对于 ActiveX 表,还可以检查表对象的属性。要添加表检查点,可使用“检查点属性”对话框。
在上面我们已经添加了标准、网页、文字将查点,接下来我们在Checkpoint测试脚本中再添加一个表格检查点,检查“Book a Flight: Mercury”网页上航班的价格。
创建表格检查点:
1.选取要建立检查点的网页
展开“Action1>Welcome: Mercury Tours”选择“Book a Flight: Mercury”页面,在“Active Screen”会显示相应的页面。
2.建立表格检查点
在“Active Screen”中,在第一个航班的价钱上“270”上点击鼠标右键,选择“Insert Standard Checkpoint”打开“Object Selection-Checkpoint Properties”对话窗口。
刚打开时选取的是“WebElement:270”,这时要选择上一层的WebTable对象,在这个例子中选择“WebTable: New York to San Francisco”。点击“OK”打开“Table Checkpoint Properties”对话窗口,显示整个表格的内容。
预设每一个字段都会被选择,表示所有字段都会检查,可以对某个字段双击,取消检查字段,或者选择整个栏和列,执行选取或取消的动作。
在每个字段的列标题上双击,取消勾选的图标,然后再270字段处双击,这样执行时QuickTest只会对这个字段值作检查。
3.点击“OK”关闭对话框。
QuickTest会在测试脚本中,“Book a Flight: Mercury”页面下加上一个表格检查点。
4.在工具栏上点击“Save”保存脚本。
3.3 执行并分析使用检查点的测试脚本
在上一节中,我们在脚本中添加了4个检查点,现在,运行Checkpoint测试脚本,分析插入检查点后,脚本的运行情况。
1.在工具栏上点击“Run”按钮,弹出如下窗口:
这个页面是询问将本次测试结果保存在哪个目录,选择“New run results folder”单选按钮,接受默认设置,点击“OK”按钮确认。这时QuickTest会按照脚本中的操作,一步一步进行测试,操作过程和手工操作是完全一样。
2.当QuickTest执行王测试脚本后,测试执行结果窗口会自动开启。如果所有的检查点都通过了验证,运行结果为Passed。如果有一个或多个检查点没有同过验证,这运行结果显示为Failed,如下图所示:
在上图中可以看到,设置的4个检查点都通过了验证,下面我们看一下各个检查点的验证结果。
n 验证网页检查点
在test results tree中展开“Checkpoint Iteration 1 (Row 1) > Action1 Summary >Welcome: Mercury Tours >Book a Flight: Mercury”,并选择“Checkpoint"Book a Flight: Mercury"”。
在右边的“Details”窗口中,可以看到网页检查点的详细信息,例如网页检查点检查了哪些项目。
由于所有网页检查的项目,其实际值与预期值相符,所以这个网页检查点的结果为Passed。
n 验证表格检查点
在test results tree中展开“Book a Flight: Mercury >New York to San Francisco ”,并选择“Checkpoint"New York to San Francisco"”。
在“Details”窗口可以看到表格的详细结果。也可以在下方看到整个表格的内容,被检查的字段以黑色的粗体文字显示,没有检查的字段以灰色文字显示。如下图所示:
这个表格检查点检查的字段值,其实际值与预期值相符,所以检查点的结果为Passed。
n 验证标准检查点
在test results tree中展开“Book a Flight: Mercury >passFirst0”,并选择“Checkpoint"passFirst0"”。
在“Details”窗口可以看到标准检查点的详细结果,如检查了哪些属性,以及属性的值。
n 验证文字检查点
在test results tree中展开“Checkpoint Iteration 1 (Row 1) > Action1 Summary >Welcome: Mercury Tours > Flight Confirmation: Mercury”,并选择“Checkpoint"New York"”。显示如界面,因为文字检查点的实际值与预期值相同,所以检查点的结果为Passed。
4 参数化
在测试应用程序时,可能想检查对应用程序使用不同输入数据进行同一操作时,程序是否能正常的工作。在这种情况下,你可以将这个操作重复录制多次,每次填入不同的数据,这种方法虽然能够解决问题,但实现起来太笨拙了。QuickTest提供了一个更好的方法来解决这个问题——参数化测试脚本。参数化测试脚本包括数据输入的参数化和检测点的参数化。
使用 QuickTest 可以通过将固定值替换为参数,扩展基本测试或组件的范围。该过程(称为参数化)大大提高了测试或组件的功能和灵活性。
可在 QuickTest 中使用参数功能,通过参数化测试或组件所使用的值来增强测试或组件。参数是一种从外部数据源或生成器赋值的变量。
QuickTest可以参数化测试或组件中的步骤和检查点中的值。还可以参数化操作参数的值。如果希望参数化测试或组件中多个步骤中的同一个值,可能需要考虑使用数据驱动器,而不是手动添加参数。
4.1 参数化步骤和检查点中的值
录制或编辑测试或组件时,可以参数化步骤和检查点中的值。可以参数化选定步骤的对象属性的值。还可以参数化为该步骤定义的操作(方法或函数参数)的值。
例如,应用程序或网站可能包含一个带有编辑字段的表单,用户可以在该编辑字段中键入用户名。你可能希望测试应用程序或网站是否读取该信息并将其正确显示在对话框中。可以插入一个对已登录的用户名使用内置环境变量的文本检查点,以检查显示的信息是否正确。
通过参数化检查点属性的值,可以检查应用程序或网站如何基于不同的数据执行相同的操作。
例如,如果要测试 Mercury Tours 示例网站,可以创建一个检查点,以便检查预订机票后该机票是否被正确预订。假设您需要检查针对各种不同目的地所预订的航班是否正确。可以为目的地信息添加一个数据表参数,而不是为每个目的地分别创建带有单独检查点的不同测试或组件。对于测试或组件的每次循环,QuickTest 都会针对不同目的地检查航班信息。
4.1.1 参数化对象和检查点的属性值
可以在“对象属性”或“对象库”对话框中参数化对象的一个或多个属性的值。可以在“检查点属性”对话框中参数化检查点的一个或多个属性的值。
采用下列方式可以打开“对象属性”对话框或“检查点属性”对话框:
n 选择“步骤” > “对象属性”,或者右键单击某个步骤并选择“对象属性”。将打开“对象属性”对话框。
n 选择“工具” > “对象库”,单击“对象库”工具栏按钮,或者右键单击包含该对象的操作或组件,然后选择“对象库”。将打开“对象库”对话框。
n 选择“步骤” > “检查点属性”,或者右键单击该检查点并选择“检查点属性”。
然后在对话框的“配置值”区域中选择参数,
如果该值已经参数化,则“参数”框将显示该值的当前参数定义。如果该值尚未参数化,则“参数”框将显示该值的默认参数定义。
4.1.2 参数化操作的值
如果步骤中使用的方法或函数具有参数,则可以根据需要参数化该参数值。例如,如果操作使用 Click方法,则可以参数化x参数、y参数或这两者的值。
在关键字视图中选择已参数化的值时,将显示该参数类型的图标。例如,在以下片段中,已将Set 方法的值定义为随机数字参数。每次运行测试或组件时,QuickTest 都会在 creditnumber编辑框中输入一个随机数字值。
可以使用视图中的“值”列中的参数化图标来参数化操作值。
单击参数化图标,打开“值配置选项”对话框,将显示当前定义的值。
选择“参数”。如果该值已经参数化,则“参数”部分将显示该值的当前参数定义。如果该值尚未参数化,则“参数”部分将显示该值的默认参数定义。单击“确定”接受显示的参数语句并关闭该对话框。
选择一个尚未参数化的值时, QuickTest 会为该值生成默认参数定义。下表描述了如何确定默认参数设置:
执行参数化时
条件
默认参数类型
默认参数名
操作中的步骤或检查点的值
至少在当前操作中定义了一个输入操作参数
操作参数
在“操作属性”对话框的“参数”选项卡中显示第一个输入参数
嵌套操作的输入操作参数值
至少为调用该嵌套操作的操作定义了一个输入操作参数
操作参数
在调用操作的“操作属性”对话框的“参数”选项卡中显示第一个输入参数
顶层操作调用的输入操作参数值
至少为测试定义了一个输入参数
测试参数
在“测试设置”对话框的“参数”选项卡中显示第一个输入参数
组件中的步骤或检查点的值
至少为该组件定义了一个输入参数
组件参数
在“业务组件设
展开阅读全文