QTP工具教程.docx
- 文档编号:8826195
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:42
- 大小:46.35KB
QTP工具教程.docx
《QTP工具教程.docx》由会员分享,可在线阅读,更多相关《QTP工具教程.docx(42页珍藏版)》请在冰豆网上搜索。
QTP工具教程
QTP测试工具教程第一部分
第一章 QTP 简介
1.1自动化测试的好处
如果你执行过人工测试,你一定了解人工测试的缺点,人工测试非常浪费时间而且需要投入大量的人力。
使用人工测试的结果,往往是在应用程序交付前,无法对应用程序的所有功能都作完整的测试。
使用QuickTest可以加速整个测试的过程,并且建置完新版本的应用程序或网站后,可以重复使用测试脚本进行测试。
以QuickTest执行测试,就与人工测试一样。
QuickTest会仿真鼠标的动作与键盘的输入,不过QuickTest比人工测试快了很多。
自动化测试的好处
快速
QuickTest执行测试比人工测试速度快多了。
可靠
QuickTest每一次的测试都可以正确的执行相同的动作,可以避免人工测试的错误。
可重复
QuickTest可以重复执行相同的测试。
可程序化
QuickTest可以以程序的方式,撰写复杂的测试脚本,以带出隐藏在应用程序中的信息。
广泛性
QuickTest可以建立广泛的测试脚本,涵盖应用程序的所有功能。
可再使用
QuickTest可以重复使用测试脚本,即使应用程序的使用接口已经改变。
1.2 QuickTest工作流程
1.录制测试脚本前的准备
在测试前需要确认你的应用程序及QuickTest是否符合测试需求?
确认你已经知道如何对应用程序进行测试,如要测试哪些功能、操作步骤、预期结果等。
同时也要检查一下QuickTest的设定,如TestSettings以及Options对话窗口,以确保QuickTest会正确的录制并储存信息。
确认QuickTest以何种模式储存信息。
2.录制测试脚本
操作应用程序或浏览网站时,QuickTest会在KeywordView中以表格的方式显示录制的操作步骤。
每一个操作步骤都是使用者在录制时的操作,如在网站上点击了链接,或则在文本框中输入的信息。
3.加强测试脚本
在测试脚本中加入检查点,可以检查网页的链接、对象属性、或者字符串,以验证应用程序的功能是否正确。
将录制的固定值以参数取代,使用多组的数据测试程序。
使用逻辑或者条件判断式,可以进行更复杂的测试。
4.对测试脚本进行调试
修改过测试脚本后,需要对测试脚本作调试,以确保测试脚本能正常并且流畅的执行。
5.在新版应用程序或者网站上执行测试脚本
通过执行测试脚本,QuickTest会在新本的网站或者应用程序上执行测试,检查应用程序的功能是否正确。
6.分析测试结果
分析测试结果,找出问题所在。
7.测试报告
如果你安装了TestDirector(QualityCenter),则你可以将发现的问题回报到TestDirector(QualityCenter)数据库中。
TestDirector(QualityCenter)是Mercury测试管理工具。
1.3 QTP程序界面
在学习创建测试之前,先了解一下QuickTest的主界面。
下图是录制了一个操作后QuickTest的界面。
在QTP界面包含标题栏、菜单栏、文件工具条等几个界面元素,下面简单解释各界面元素的功能:
n 标题栏,显示了当前打开的测试脚本的名称。
n 菜单栏,包含了QuickTest的所有菜单命令项。
n 文件工具条,在工具条上包含了以下几个按钮:
n 测试工具条,包含了在创建、管理测试脚本是要使用的按钮,如下图:
n 调试工具条,包含在调试测试脚本时要使用的工具条,如下图:
n 测试脚本管理窗口,提供了两个可切换的窗口,分别通过图形化方式和VBScript脚本方式来管理测试脚本。
n DataTable窗口,用于参数化你的测试。
n 状态栏,显示测试过程中的状态。
在上面上面简要介绍了QuickTest的主窗口,你可能对一些窗口元素到底是干什么的感到很困惑,在我们下面介绍QuickTest具体的功能时,会真正了解它们的作用。
但在现在,应该尽可能的去熟悉这些界面元素,记住它们大概的功能,最好是花一些时间通过实际的操作来探索一下它们的功能,这对你能够顺利学习下面的内容是有帮助的。
1.4 MercuryTours示范网站
MercuryTours示范网站是一个提供机票预订服务的网站,在本课程中,我们使用MI公司提供的MercuryTours示范网站作为演示QuickTest各个功能的例子程序。
1.在开始使用MercuryTours示范网站()之前,首先要在MercuryTours网站上注册一个使用者账号。
2.MercuryTours示范网站使用
要登录并使用MercuryTours示范网站必须使用注册账号。
在使用网站时,从[FlightFinder]网页开始,按照画面上的指示预订机票。
在BookaFlight网页,无需填写真实的旅客信息,信用卡卡号等标示为红色的字段中添加虚拟数据就可以了。
3.结束订票动作
完成订票动作后,在[FlightConfirmation]网页上点选[LOGOUT]按钮或是选择[SIGN-OFF]按钮。
4.关闭浏览器
现在知道如何使用MercuryTours示范网站,就可以开始使用QuickTest录制测试脚本了。
QTP第二部分
第二章 录制/执行测试脚本
当浏览网站或使用应用程序时,QuickTest会纪录你的操作步骤,并产生测试脚本。
当停止录制后,会看到QuickTest在KeywordView中以表格的方式显示测试脚本的操作步骤。
2.1 录制前的准备
在录制脚本前,首先要确认以下几项:
n 已经在MercuryTours示范网站上注册了一个新的使用者账号。
n 在正式开始录制一个测试之前,关闭所有已经打开的IE窗口。
这是为了能够正常的进行录制,这一点要特别注意。
n 关闭所有与测试不相关的程序窗口。
2.2 录制测试脚本
2.2.1录制测试脚本
在这一节中我们使用QuickTest录制一个测试脚本,在MercuryTours范例网站上预定一张从纽约(NewYork)到旧金山(SanFrancisco)的机票。
1.执行QuickTest并开启一个全新的测试脚本
n 开启QuickTest,在“Add-inManager”窗口中选择“Web”选项,点击“OK”关闭“Add-inManager”窗口,进入QuickTestProfessional主窗口。
n 如果QuickTestProfessional已经启动,检查“Help>AboutQuickTestProfessional”查看目前加载了那些add-ins。
如果没有加载“Web”,那么必须关闭并重新启动QuickTestProfessional,然后在“Add-inManager”窗口中选择“Web”。
n 如果在执行QuickTestProfessional时没有开启“Add-inManager”则点击“Tool>Options”,在“General”标签页勾选“DisplayAdd-inManageronStartup”,在下次执行QuickTestProfessional时就会看到“Add-inManager”窗口了
2.开始录制测试脚本
选中“Test>Record”或者点选工具栏上的“Record”按钮。
打开“RecordandRunSettings”对话窗口:
在“Web”标签页选择“Openthefollowingbrowserwhenarecordorrunsessionbegins”
在“Type”下拉列表中选择“MicrosoftInternetExplorer”为浏览器的类型;在“Address”中添加“这样,在录制的时候,QuickTest会自动打开IE浏览器并连接到MercuryTours范例网站上。
现在我们在切换到“WindowsApplication”标签页,如下图所示:
如果选择“RecordandruntestonanyopenWindows-basedapplication”单选按钮,则在录制过程中,QuickTest会记录你对所有的Windows程序所做的操作。
如果选择“Recordandrunontheseapplication(openedwhenasessionbegins)”单选按钮,则在录制过程中,QuickTest只会记录对那些添加到下面“Applicationdetails”列表框中的应用程序的操作(你可以通过“Add”、“Edit”、“Delete”按钮来编辑这个列表)。
我们选择第二个单选按钮。
因为我们只是对MercuryTours范例网站进行操作,不涉及到Windows程序,所以保持列表为空。
点击“确定”按钮,开始录制了,将自动打开IE浏览器并连接到MercuryTours范例网站上。
3.登录MercuryTours网站
在用户名和密码输入注册时使用的账号和密码,点击“Sign-in”,进入“FlightFinder”网页。
4.输入订票数据
输入以下订票数据:
DepartingFrom:
NewYork
On:
May14
ArrivingIn:
SanFrancisco
Returning:
May28
ServiceClass:
Businessclass
其他字段保留默认值,点击“CONTINUE”按钮打开“SelectFlight”页面。
5.选择飞机航班
可以保存默认值,点击“CONTINUE”按钮打开“BookaFlight”页面。
6.输入必填字段(红色字段)
输入用户名和信用卡号码(信用卡可以输入虚构的号码,如8888-8888)。
点击网页下方的“SECUREPURCHASE”按钮,打开“FlightConfirmation”网页。
7.完成定制流程
查看订票数据,并选择“BACKTOHOME”回到MercuryTours网站首页。
8.停止录制
在QuickTest工具列上点击“Stop”按钮,停止录制。
到这里已经完成了预定从“纽约-旧金山”机票的动作,并且QuickTest已经录制了从按下“Record”按钮后到“Stop”按钮之间的所有操作。
9.保存脚本
选择“File>Save”或者电机工具栏上的“Save”按钮,开启“Save”对话窗口。
选择的路径,填写文件名,我们取名为Flight。
点击“保存”按钮进行保存。
通过以上九个步骤,我们录制了一个完整的测试脚本—预定从纽约到旧金山的机票。
2.2.2分析录制的测试脚本
在录制过程中,QuickTest会在测试脚本管理窗口(也叫TreeView窗口)中产生对每一个操作的相应记录。
并在KeywordView中以类似Excel工作表的方式显示所录制的测试脚本。
当录制结束后,QuickTest也就记录下了测试过程中的所有操作。
测试脚本管理窗口显示的内容如下图所示:
在KeywordView中的每一个字段都有其意义:
n Item:
以阶层式的图标表示这个操作步骤所作用的组件(测试对象、工具对象、函数呼叫或脚本)。
n Operation:
要在这个作用到的组件上执行的动作,如点击、选择等。
n Value:
执行动作的参数,例如当鼠标点击一张图片时是用左键还是右键。
n Assignment:
使用到的变量。
n Comment:
你在测试脚本中加入的批注。
n Documentation:
自动产生用来描述此操作步骤的英文说明。
脚本中的每一个步骤在KeywordView中都会以一列来显示,其中用来表示此组件类别的图标以及步骤的详细数据。
下面我们针对一些常见的操作步骤作详细说明:
步骤
说明
Action1是一个动作的名称
Welcome:
Mercury是被浏览器开启的网站的名称
Welcome:
MercuryTours是网页的名称
userName是editbox的名称
Set是在这个editbox上执行的动作
jojo是被输入得值
password是editbox的名称
SetSecure是在这个editbox上执行的动作,此动作有加密的功能
446845bf84444adc…是被加密过的密码
Sign-In是图像对象的名称
Chick是在这个图像上执行的动作
41,4则是这个图像被点击的X,Y坐标
2.3 执行测试脚本
当运行录制好的测试脚本时,QuickTest会打开被测试程序,执行你在测试中录制的每一个操作。
测试运行结束后,QuickTest显示本次运行的结果。
接下来,我们执行在上一节中录制的Flight测试脚本。
1.打开录制的Flight测试脚本。
2.设置运行选项。
点击“Tool>Options”打开设置选项对话框,选择“Run”标签页,如下图:
如果要将所有画面储存在测试结果中,在“Savestepscreencapturetoresults”选项中选择“Always”选项。
一般情况下我们选择“Onerror”或“Onerrorandwarning”表示在回放测试过程中出现问题时,才保存图象信息。
在这里我们为了更多的展示QuickTest的功能,所以选择使用“Always”选项。
3.在工具条上点击“Run”按钮,打开“Run”对话框:
询问要将本次的测试运行结果保存到何处。
选择“NewRunresultsfolder”单选按钮,设定好存放路径(在这使用预设的测试结果名称)。
4.点击“OK”按钮开始执行测试。
可以看到QuickTest按照你在脚本中录制的操作,一步一步的运行测试,操作过程与你手工操作时完全一样。
同时可以在QuickTest的KeywordView中会出现一个黄色的箭头,指示目前正在执行的测试步骤。
2.3.2执行脚本出现错误
如果在执行测试的时候出现错误,会显示一个错误信息对话框?
2.4 分析测试结果
在测试执行完成后,QuickTest会自动显示测试结果窗口,如下图所示:
在这个测试结果窗口中分二个部分显示测试执行的结果
n 左边显示Testresultstree,以阶层图标的方式显示测试脚本所执行的步骤。
可以选择“+”检查每一个步骤,所有的执行步骤都会以图示的方式显示。
可以设定QuickTest以不同的资料执行每个测试或某个动作,每执行一次反复称为一个迭代,每一次迭代都会被编号(在上面的例子中只执行了一次迭代)。
n 右边则是显示测试结果的详细信息。
在第一个表格中显示哪些迭代是已经通过的,哪些是失败的。
第二个表格是显示测试脚本的检查点,哪些是通过的,哪些是失败的,以及有几个警告信息。
在上面的测试中,所有的测试都是通过的,在脚本中也没有添加检查点(有关检查点的内容我们将在以后的课程中学习)。
接下来我们查看QuickTest执行测试脚本的详细结果,以及选择某个测试步骤时出现的详细信息。
在树视图中展开“FlightIteration1(Row1)>Action1Summary>WelcomeMercuryTours>FindaFlight:
Mercury>”,选择“"fromPost":
Select"NewYork"”。
在这个测试结果窗口中显示三个部分,分别是:
n 左边是Testresultstree:
展开树视图后,显示了测试执行过程中的每一个操作步骤。
选择某一个测试步骤,会在右边区域显示相应的信息。
n 右上方是Testresultsdetail:
对应当前选中的测试步骤,显示被选取测试步骤执行时的详细信息。
n 右下方是ActiveScreen:
对应当前选中的测试步骤,显示该操作执行时应用程序的屏幕截图。
当选中testresultstree上的网页图示,会在“ActiveScreen”中看到执行时的画面。
当选中testresultstree上的测试步骤(在某个对象上执行某个动作),除了显示当前时的画面外,对象还会被粉色的框框框住。
在上面的例子中,在“ActiveScreen”中点击被框住的“DepartingFrom”下拉菜单,会显示其他的选项。
QTP教程第三部分
第三章 建立检查点
通过上一章的学习,我们已经掌握了如何录制、执行测试脚本以及查看测试结果。
但是我们只是实现了测试执行的自动化,没有实现测试验证的自动化,所以这并不是真正的自动化测试。
在这一章我们学习如何在测试脚本中设置检查点,以验证执行结果的真确性。
“检查点”是将指定属性的当前值与该属性的期望值进行比较的验证点。
这能够确定网站或应用程序是否正常运行。
当添加检查点时,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:
MercuryTours>BookaFlight:
Mercury”,由于输入使用者姓氏的测试步骤是“passFirst0”这个步骤,所以要选择这个步骤的下一个测试步骤,以便建立检查点。
如下图所示:
3.建立标准检查点
对“ActiveScreen”中的FirstName编辑框点击鼠标右键,显示插入选择点的类型。
选择“InsertStandardCheckpoint”选型,显示“ObjectSelection-CheckpointProperties”对话窗口:
确保当前的焦点定位在“WebEdit:
passFirst0”上,点击“OK”按钮,弹出如下的窗口:
在检查点属性窗口会显示将查点的属性:
n Name:
将查点的名称
n Class:
检查点的类别,WebEdit表示这个检查点是个输入框
n “Type”字段中的“ABC”图标:
表示这个属性的值是一个常数
对于每一个检查点,QuickTest会使用预设的属性最为检查点的属性,下表说明这些预设的属性。
属性
值
说明
htmltag
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:
MercuryTours”选择“BookaFlight:
Mercury”页面,在“ActiveScreen”会显示相应的页面。
2.建立网页检查点
在“ActiveScreen”上的任意地方点击鼠标右键,选取“InsertStandardCheckpoint”,开启“ObjectSelection-CheckpointProperties”对话窗口(由于选择的位置不同,对话窗口显示被选取的对象可能不一样)。
选择最上面的“Page:
BookaFlight:
Mercury”,并点击“OK”按钮确认,将打开“PageCheckpointProperties”对话框。
当执行测试时,QuickTest会检查网页的链接与图片的数量,以及加载的时间,如同对话窗口上方所显示的那样。
QuickTest页检查每一个链接的URL以及每一个图片的原始文件是否存在。
接受默认设定,点击“OK”。
QuickTest会在BookaFlight:
Mercury网页上加一个网页检查。
4.在工具栏上点击“Save”保存脚本。
3.2.3文字检查
在这一节中我们学习建立一个文字检查点,检查在“FlightConfirmation”网页中是否出现“NewYork”?
建立文字检查点:
1.确定要建立检查点的网页
展开“Action1>Welcome:
MercuryTours”选择“FlightConfirmation:
Mercury”页面,在“ActiveScreen”会显示相应的页面。
2.建立文字检查点
在“ActiveScreen”中选择在“Depa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- QTP 工具 教程