QTP学习与实践经验总结终极收藏版本.docx

上传人:b****6 文档编号:9104241 上传时间:2023-02-03 格式:DOCX 页数:113 大小:5.28MB
下载 相关 举报
QTP学习与实践经验总结终极收藏版本.docx_第1页
第1页 / 共113页
QTP学习与实践经验总结终极收藏版本.docx_第2页
第2页 / 共113页
QTP学习与实践经验总结终极收藏版本.docx_第3页
第3页 / 共113页
QTP学习与实践经验总结终极收藏版本.docx_第4页
第4页 / 共113页
QTP学习与实践经验总结终极收藏版本.docx_第5页
第5页 / 共113页
点击查看更多>>
下载资源
资源描述

QTP学习与实践经验总结终极收藏版本.docx

《QTP学习与实践经验总结终极收藏版本.docx》由会员分享,可在线阅读,更多相关《QTP学习与实践经验总结终极收藏版本.docx(113页珍藏版)》请在冰豆网上搜索。

QTP学习与实践经验总结终极收藏版本.docx

QTP学习与实践经验总结终极收藏版本

(终极收藏版本)

QTP学习与实践经验总结

前言:

QTP全名QuickTestProfessional,是MI公司出品的一款测试工具.它的优点是使用方便,功能强大并且可以通过与测试管理工具的互连达到自动化功能测试的目的.QTP是专门针对B/S模式的测试工具.它具有:

识别能力强,回放精确等优点,是进行B/S模式下功能测试的首选工具.下面是本人学习QTP的经验总结,它包括了在学习阶段和使用阶段所遇到的问题.当然我这里所说的还很不全面,有很多欠缺,希望大家通过上面的联系方式与我联系,大家共同学习.

1TD与QTP的连接5

1.1TD与QTP的连接5

1.2QTP自动提交错误到TD中13

1.3本机创建,修改与提交16

1.4QTPfail自动截图20

1.5上网助手等插件对QTP的影响23

1.6防火墙对TD与QTP的连接的影响(瑞星2005下)24

1.7如何定时运行QTP26

2QTP的录制29

2.1QTP的录制方法29

2.2QTP录制应先作录制计划29

2.3关于下拉菜单的更改30

2.4输入法对于回放的影响32

2.5如何修改系统时间32

3QTP的自定义操作33

3.1手工添加步骤33

3.2手工识别控件44

4多个Action一起执行48

4.1为什么会用到多个Action调用48

4.2对被调用Action的设定48

4.3调用Action52

4.4调用Action的模式59

4.5copyAction与callexistingAction的区别59

5对于QTP一些功能键的介绍60

5.1关于录制设置的区分webeventrecordingconfiguration60

5.2关于QTP录制mouseover得问题64

5.3关于starttransAction的问题64

5.4虚拟对象的使用68

5.5对于Actionscreen捕捉不精确的解决办法72

5.6QTP录制方式的分类75

6对于内部控件属性的一些设定76

6.1关于regularexpressions76

7关于datatable81

7.1global与current的区别81

7.2importexcel的问题81

7.3关于editingthedatatable84

8关于检查点85

8.1checkpoint的返回值85

8.2QTP检查点的设定88

8.3关于文字检查点得参数化88

8.4设立可重用检查点94

8.5QTP检查点添加有问题,造成无法识别控件,导致脚本无法运行的问题96

8.6标准检查点96

9关于错误报告的问题99

9.1关于report.ReportEvent99

9.2关于reporter.fiter102

10关于在expert中操作的问题105

10.1关于getRoporperty,getTopropertise,getToproperty105

10.2编码时在出现expectendofstatement的问题109

11关于C/S模式的录制113

11.1QTP是否可以cs方式下的应用系统113

1TD与QTP的连接

1.1TD与QTP的连接

A问题描述:

使用TD和QTP互联可以实现如下功能:

A1测试版本管理

A2远程控制实现自动化测试以及回归测试

B处理流程:

B1安装TD和验证

B2安装QTP和验证

B3安装插件

B4QTP参数设置

B5验证TD和QTP互联成功

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例

D1安装TD,详细安装见TD说明书

检验TD是否安装成功,启动TDServer服务器后,在与Server相连的其他计算机上,打开IE浏览器,在地址栏输入http:

//TDServer的ip地址/TDbin/start_a.htm如果能够浏览到TD界面,说明安装成功,界面见下图

图1.1.D1.1

D2安装QTP,详细安装见QTP使用说明书

验证QTP安装成功,进入windows操作系统,点击,开始->程序->QuickTestProfessional->QuickTestProfessional,打开QTP使用界面,如下图

图1.1.D2.2

进行简单的录制,保证脚本录制成功,并且可以回放,与你的预操作达到的结果一致,证明QTP安装成功

D3安装插件,进入TD首页,点击见面上的TDAddIn如下图

图1.1.D3.3

进入TDAddIn界面点击MoreTestDirectorAddIns进入MoreTestDirectorAddIns界面,如下图

图1.1.D3.4

图1.1.D3.5

下载名为TDplugInsSetup的插件,大约35兆

并且在Server与QTP客户机上安装这个插件,安装成功后,会要求你重启电脑,重启后会看到,开始-程序中有个新安装的程序“QuickTestProfessinaladdinforQualityCenter”,登入TD进入testplan检测是否可以在testplan中添加QTP类型的测试用例如下图:

图1.1.D3.6

点击后,出现如下图对话框,并且可以建立QTP的测试用例

图1.1.D3.7

检查没有问题之后,还需要在安装QTP的机子上做一些相应的设定

D4对于QTP的一些设定

进入QTP主界面,点击文件栏的Tools-Options,进入Options对话框

图1.1.D4.8

在RunTab中选择AllowotherMercuryproductstoruntestandcomponents,以及SubmitadefecttoQualiytCenterforeachfailedstep选中后,点击ok保存这个设置

在QTP主界面中点击Tool-QualityCenterConnection

图1.1.D4.9

在Server中输入http:

//TDServerip地址/TDbin(本例中使用htt......),点击connect按钮,QTP连接到服务器上,如果服务器连接有问题,则会提示连接失败

在projectconnection中包含一下几项:

Domain:

TD服务器站点管理中建立项目的域,如下图

图1.1.D4.10

Project:

域中你所建立的项目

User:

登陆项目所用的用户名

Password:

相应用户名使用的密码

Reconnectonstartup在下次启动QTP时自动登陆到你的项目中

Savepasswordforreconnectiononstartup为下次登陆保存密码

完成了上述操作就TD和QTP就连接起来,可以从TD调用QTP脚本了

连接成功后会在QTP右下脚出现出现一个标志,如下图:

图1.1.D4.11

出现这个标志说明连接成功

E个人感受:

TD是测试管理工具,单独使用它,只能管理手工测试的用例,无法做到回归测试

QTP是自动化功能测试工具,单独使用它,虽然能完成回归测试,但是无法进行测试版本管理

通过TD与QTP的联合使用,有以下几个优点

1.可以通过TD管理QTP的测试脚本

2.通过TD命令在其他计算机执行在本机录制的QTP脚本,以节省时间,让自己可以继续录制其他用例的脚本

1.2QTP自动提交错误到TD中

A问题描述:

QTP和TD相连后,QTP通过在脚本中设立的检查点,来检查运行结果是否与预期结果一致,并将错误的结果值返回到TD中,以便开发人员查看

B处理流程:

B1.在QTP中的参数设置

B2.在TD中执行QTP脚本,并且自动获得QTP提交的错误报告

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例:

D1QTP与TD连接之后能够通过设定的检查点,自动向TD报送错误,并且将错误保存在TD的defect中

在QTP主界面,选择tools-options进入option对话框

在runtab中选择submitadefecttoQualityCenterforeachfailedstep,并且保存这个设置,如下图

图1.2.D1.1

在windows系统主界面,点击开始-程序-QuickTestProfessional-testresultviewer,打开testresultviewer如下图

图1.2.D1.2

点击tool-qualitycenterconnection,弹出连接对话框如下图

图1.2.D1.3

Server:

与QTP输入的服务器地址一致

Domain:

与QTP输入的服务器地址一致

User:

与QTP输入的服务器地址一致

Password:

与QTP输入的服务器地址一致

Reconnectonstartup在下次启动QTP时自动登陆到你的项目中

Savepasswordforreconnectiononstartup为下次登陆保存密码

D2在TD中运行QTP脚本,检查点检查到的错误信息将被保存在TD的defect中。

详细见TD使用手册

E个人感受:

 

1.3本机利用QTP创建,修改与提交脚本

A问题描述:

当QTP,testresultviewer与TD连接成功后,就可以通过TD调用QTP来录制脚本,录制脚本完成后,脚本将保存到你的TD服务器中,当你修改脚本时,需要通过TD调用出你所需要修改的脚本,修改完成后,脚本继续保存在TD服务器中

B处理流程:

B1在TD中建立QTP测试用例

B2调用QTP

B3录制脚本

B4保存脚本

B5在TD中查看脚本

B6修改脚本

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例:

D1在TD中建立QTP测试用例,点击newtest并且选择QTP测试用例,如下图

图1.3.D1.1

图1.3.D1.2

D2调用QTP,开启QTP

脚本建立成功后,点击testscrip,并且点击其中的lanch键如下图

图1.3.D2.3

D3录制脚本,详细见QTP说明书

D4保存脚本,当你的脚本录制完成后,点击save,出现如下对话框

图1.3.D4.4

左边的文件树是你的testplan,在testname中输入测试名称,点击保存,你的脚本将保存到testplan下,你也可以点击右上的filesystem…将脚本保存到本机上

Saveactivescreenfiles,选中这个之后回将你QTP中保存的activescreen随着脚本一起保存到TD服务器中

D5在TD中查看脚本,在TD的testplan中查看脚本,如下图

图1.3.D5.5

选中一个测试脚本,点击右边的testscrip,能够看到详细的步骤,如下图

图1.3.D5.6

D6修改脚本,如上操作打开QTP,打开后,修改你的脚本,修改完成后,点击save新脚本自动保存到TD服务器中

E个人感受:

 

1.4QTPfail自动截图功能的使用

A问题描述:

在测试过程中,尝尝出现随机性错误,很难重现,但并不意味着错误不存在,这时候与开发人员交流起来就会有问题,因为开发人员不能准确的知道你所要展现的错误,自动截图功能,能在检查点失败的时候,截取当时的页面,通过这些图片,能让开发人员更加直观的了解错误信息,改正错误

B处理流程:

B1设置QTP

B2在TD中运行QTP脚本

B3查看截图

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例:

D1设置QTP,进入QTP操作界面,点击tools-option中的runtab如下图

图1.4.D1.1

其中savestepscreencapturetoresults是控制向QTP提交图片的选项,其中包括

Always保存每步的界面

Onerrors在发生errors的时候,当检查点不通过的时候保存图片

Onerrorsandwarnings在发生errors和warinings时,保存图片

Never不保存图片

D2在TD中运行脚本,(详见1.3)

D3查看截图,所截的图,并不能以附件的形式出现在TD的defect中,而是出现在testtab中,双击的你的自动化测试

图1.4.D3.2

出现如下图界面,选中一条fail,通过点击其中的lanch键来调出QTP自带的错误报告

图1.4.D3.3

通过这个来查看截图

图1.4.D3.4

E个人感受:

这里的图不能以附件的形式保存到defect中,需要知道错误是哪个计划中的哪个用例执行之后的结果.

 

1.5上网助手等插件对QTP的影响

A问题描述:

在运行QTP时,由于QTP对浏览器的反映速度比较高,一些影响浏览器浏览速度的插件将导致QTP无法正常运行

B处理流程:

B1删除插件

B2运行QTP

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例:

D1检查你的浏览器上有什么非默认的插件(建议使用浏览器的最初版,不要安装任何插件),删除这些插件

D2运行QTP(详见QTP使用手册)

E个人感受:

插件对QTP的执行影响比较大,很多不明错误都是不明插件引起的

1.6防火墙对TD与QTP的连接的影响(瑞星2005下)

A问题描述:

TD与QTP的连接是基于网络的,需要通过防火墙设置允许TD调用QTP的插件,否则将无法正常调用

B处理流程:

B1防火墙自动识别程序

B2手工识别

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例:

D1防火墙自动识别程序,当TD调用QTP时,会自动启动一个调用程序,通常情况下,防火墙会自动识别出来,并且问用户是否允许通过,选择允许通过

D2手工识别,如果防火墙没有自动识别调用程序就需要手工识别这个程序,手工需要添加的程序如下图

图1.6.D2.1

图1.6.D2.2

E个人感受:

需要防火墙通过验证,不然无法正确执行

1.7如何使用QTP进行定时测试

A问题描述:

当使用TD连接QTP后,就可以通过TD来对QTP的运行进行管理,控制QTP何时运行

B处理流程:

B1在TD中设定时间

B2QTP定时运行

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例:

D1在TD中设定时间,在testlab中添加一个控件,如下图

图1.6.D1.1

选中这个新的控件,并且点击他的中心,拖动鼠标,让他发出的连线与你的测试相连如下图

图1.6.D1.2

你可以通过单击右键选择timedependency来设定时间

图1.6.D1.3

图1.6.D1.4

D2QTP定时运行当设定完毕后,点击run键,TD会弹出运行界面,点击runQTP将等待,直到你设定的时间后才开始执行测试脚本

E个人感受:

2QTP的录制

2.1QTP录制应先作录制计划

A问题描述

在录制脚本时,通常会遇到一些特殊的情况,比如在编辑脚本时无法添加文字检查点等问题

B解决办法

在录制脚本之前作录制计划,不一定要详细的计划,只是在头脑中要清晰你要录制什么流程,设立什么检查点,在哪设立检查点.避免不作计划先录制脚本,然后通过编辑的方法来完善脚本,有的时候由于录制级别设置的问题,有的界面可能无法被保存下来,那么你就无法在其上使用任何检查点,边录制边添加检查点的方法就可以避免这个问题.

C个人感受:

2.2QTP的录制方法

A问题描述

在学会使用QTP之后需要掌握其正确的录制方法才能达到事半功倍的效果,往往方法不对会导致运行结果与预期不一致,现以录制登陆为例

B解决办法

以登陆为例,登陆一般分为两个脚本录制,分别是合法登陆,非法登陆

合法登陆:

使用正确得用户名,密码,登陆系统,检查点检查登陆到系统中

非法登陆:

使用错误的用户茗,密码,登陆系统,检查点检查因没有登陆进系统,而弹出的提示信息

C个人感受:

 

2.3关于下拉选择数据输入框的更改

A问题描述:

在QTP录制脚本的过程中经常会遇到下拉选择数据输入框的问题和录制后会遇到需要通过参数化来使脚本的重用性提高的问题,你可以通过修改下拉选择数据输入框的属性的值的方法完成参数化

B处理流程:

B1录制脚本

B2参数化下拉菜单

B3运行脚本

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例:

D1录制脚本,录制一个关于下拉选择数据输入框的脚本如下图

图2.3.D1.1

D2参数化下拉选择数据输入框,展开你的脚本,找到有下拉菜单的那个步骤,直接在他的值上作更改或者参数化即可

图2.3.D2.2

根据你更改的数值,QTP会在下次回放时自动找到这个数值

关于多极下拉选择数据输入框的问题,使用同样的方法QTP会自动识别二级菜单你所输入的内容

D3运行脚本

E个人感受:

2.4中文输入法对于回放的影响

A问题描述

由于录制和回放时输入法设定不一致,使得回放时,QTP不能识别某些输入法的特定字符,导致脚本无法正常运行

B解决办法

保证录制脚本的环境与回放时的环境相同,避免产生类似的问题,这个问题可以扩展到其他方面,很多情况下,都是由于回放环境与录制脚本环境不一致导致脚本无法正常运行,输入法只是一个例子

C个人感受:

2.5如何修改系统时间

A问题描述:

使用QTP连续修改系统时间

B解决办法:

通过编码实现

建立一个bat文件,输入

time%1

QTP中:

SystemUtil.Run"c:

\settime.bat","15:

30:

00"

"15:

30:

00":

为需要设置的系统时间

关于录制这部分,因为每个人遇到的问题不一样,所以没法写的很多,只能把大体的录制思想和主要的录制技巧写一下,如果有更多问题,还需要继续交流

C个人感受:

 

3QTP的自定义操作

3.1手工添加步骤的方法

A问题描述:

在录制脚本的过程中经常会遇到QTP没有按照要求录制其中一个步骤的情况,如果出现这种情况就重新录制,会浪费很多时间,我们可以通过手工添加步骤的方式,来添加步骤

B处理流程:

B1录制脚本

B2添加缺少的步骤

B3运行脚本

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例:

D1录制脚本,以登陆系统为例,在登陆系统时需要输入用户名,密码,有时QTP会遗失其中的一个步骤,导致无法正常回放,如下图缺少密码输入的步骤

图3.1.D1.1

D2添加缺少的步骤,选中输入用户名这个步骤,点击insert-newstep

图3.1.D2.2

出现如下界面

图3.1.D2.3

如果你所要添加的控件QTP已经识别过类似的控件,你可以使用这个类似的控件,并且通过修改属性来添加这个新的步骤,如果QTP没有识别过,选择stepgenerator,弹出如下对话框

图3.1.D2.4

点击如下图所示的按钮

图3.1.D2.5

弹出如下对话框

图3.1.D2.5

点击其中的

按钮,鼠标会从箭头变为手型指针,在你要测试页面上选中你要添加步骤所需要的控件,

图3.1.D2.6

弹出如下图对话框

图3.1.D2.7

点击ok,所选对象的属性将被保存到如下对话框中

图3.1.D2.8

对于需要输入值的控件,需要在如下图位置输入一个值

图3.1.D2.9

点击ok,新的步骤被添加

D3运行脚本,完成脚本后可以继续运行脚本了

E个人感受:

3.2手工识别控件的方法

A问题描述:

在QTP的使用过程中,很多时候需要知道一些非录制流程上控件的属性,这时就可以使用手工识别控件,来获取其他控件的属性

B处理流程:

B1录制完成脚本

B2编译脚本时,需要其他的控件的属性

C术语说明

C1TD是MI公司的一款测试管理工具,他采用B/S模式,使得用户可以在任何与Server相连的计算机上实现测试用例的管理

C2QTP是MI公司推出的功能测试工具,主要用于B/S模式的系统测试

D实例:

D1录制完成脚本(详见QTP使用手册)

D2在编译时,需要其他控件的属性,这时在QTP主界面点击objectspy如下图

图3.2.D2.1

弹出如下对话框

图3.2.D2.2

点击

鼠标从箭头变成手型指针,在你的测试页选中一个你想要了解属性的控件,出现如下图

图3.2.D2.3

他显示了控件的位置,以及其中的各种属性,通过这个你可以与你原有的控件属性进行对比

E个人感受:

4多Action的问题

4.1为什么会使用多个Action

A问题描述:

在录制脚本的时候通常会遇到这种情况,一个步骤需要反复执行,但是其他步骤不需要跟着执行,就比如添加信息,一般分为登陆,添加,退出,这三步,只有添加这个步骤是需要重复执行的,登陆和退出不需要重复执行

B解决办法:

这个时候就需要用到多个Action调用的方式

C个人感受:

4.2Action调用的设置

A问题描述:

在决定使用多个Action调用之后需要对整个脚本有一个划分,解决这个问题,在录制脚本之前,先要对脚本进行划分,还是以添加信息为例,划分成三步,登陆,添加,退出,其中添加

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1