QTP学习笔记

一、QTP概述

全名HP QuickTest Professional software,前身是mercuryquick test ,后来被惠普收购。

QTP,提供符合所有应用软件环境的功能测试和回归测试的机动自动化。采用关键字驱动的理念,以简化测试用例的创建和维护,它让用户可以直接录制屏幕上的操作流程,自动生成功能测试和回归测试用例。专业的测试者可以通过,提供内置脚本和调试环境来取得对测试和对象属性的完全控制。

基本过程:录制测试脚本-编辑测试脚本-调试测试脚本-运行测试脚本-分析测试结果。

录制测试脚本-设置检查点-调优脚本(包括数据参数化,添加控制逻辑,描述性编辑)-回放。

使用QTP目的:想用它来执行重复的手动测试,主要用于回归测试和测试同一款软件的新版本。主要是用于web项目的和c/s架构程序的测试。

特性:关键字驱动测试。

在测试前要考虑好如何应对应用程序进行测试,例如要测试哪些功能操作步骤,输入数据和期望输出的数据的。


二、QTP安装

1.点击安装包里的-【setup】.exe文件

2.Unified Functional Testing 安装

3.安装需要的插件,hp公司对qtp插件是单个收费的,购买许可证只有默认的3个。尽量安装在英文的路径下,选择Active X,Visual,Web插件

4.进入安装页面,点击下一步按钮

5.打开勾选同意许可协议和打开快捷方式

6.安装完成


三、常见功能问题

1.QTP的录制:在录制过程中,任何动作,移动或者拖拽等都会生成测试脚本,所以尽量在计划后再,录制测试脚本,以保证测试脚本的清晰和简明。若产生不必要的测试步骤,当即删除即可。

2.添加测试信息的输出

如果想在某个测试步骤完成后,输入相应的措施信息,到这次报告中,则需要添加测试信息的输出。操作方法:在关键字视图中,insert step|report,直接写report方法,如“reporter.reportEvent micdone”,窗口A,显示正常

3.各检查点的使用:

标准检查点,检查对象属性,例如检查某个radio button是否被选中

图片检查点,检查图片属性,检查图片的来源文件是否正确

表格检查点,检查表格的内容,检查表格内的字段内容是否正确

网页检查点,检查网页的属性,检查网页加载的时间,或是网页是否含有不正确的链接。

本次区域检查点,检查出该出现的文字是否准确检查,订票后是否出现正确订票成功的文字。

我想检查点,截取网页和窗口抖动,画面检查是否正确,检查网页的某一部分是否有预期呈现。

4.是对象识别,并里见面,用来查看或者修改唯一标识各类对象的属性。操作方法:Tools | object Identification

5.object spy的使用,QTP提供object spy可用于观察选定对象的属性和方法。操作方法:Tools | object spy

6.对象管理库,另外的一种观察和了解城市程序界面元素,以及他们的层次关系的方法是通过对象库,同时同时也可以将录制过程中的遗漏的对象添加到对象库中。方法:打开resources | object repository,在点击object | add object to local,选择需要添加的对象即可。

7.导出对象库文件,导出以便其他Action或者是脚本调用,不需要再次添加对象库。方法:打开resources | object repository,再点击files | export objects ,选择保存路径。

8.关联新的Action对象库,当天加一个新的action,需要创建其对象库,如果再重新录制一次,很麻烦,这个时候可以导入上一步骤所导出的对象库文件。方法:点击tool |associate repositories,点击+图标,选择之前导出的对象,库文件导入即可。

9.创建自定义函数。方法:insert | step generator,选择function,或者在专家视图里自己编写。

10.语法检查功能,检查脚本是否有语法错误,方法:tools | check syntax

11.使用断点,单步调试

12.合理使用debug viewer,结合断点的使用可以监控脚本运行过程中各变量值的变化。方法:view | debug viewer,再输入需要追踪的变量名

13.只运行部分测试,当多个action时候,可以定位需要运行的action,只运行这一部分。方法:Automation | run current action

14.批量运行测试,方法:tools | active screen打开窗口,可以在截屏中选中需要的对象,点击鼠标,来选择需要的操作或者添加,检查点,或建立输出值,同时也可以选择对象,并添加到对象库。

15.利用 active screen 来编辑测试脚本,这是多久?数据不仅仅局限于第一次编辑脚本设置的数据。方法:关键字视图,找到需要被参数化的数据,点击value一栏中的<●>图标,然后进行参数和设置,设置和参数化的变量会显示在datatable中

17.建立输出值,可以通过使用参数与data table让测试脚本,可以使用不同的测试资料,同样可以从应用程序数据到data,Table中,而且此数据,可以在测试脚本的后阶段被使用到。方法:Active screen中选取需要输出的文本,点击鼠标右键,然后选取insert text output,开启text output value properties对话窗口,设置完成后,datatable中会加入此字段。

18.Action测试输入的参数化,对于重复使用的测试用例,可以转化成公用用例,适当参数化后,可被其他测试用例调用。方法:Action properties,勾选reusable action ,点击parameters标签页,添加参数。

19.环境变量参数化的使用,测试脚本中可以引用预先定义好的环境变量。方法:file | setting |environment,选择user-defined,添加变量,关键字视图中应用环境变量

20.虚拟对象,如果程序中包括哪些行为类似标准对象的对象,但是都不被qtp所识别,则可以把这些对象定义为虚拟对象,并且映射到某类标准对象,例如button,check box等。方法:tools | virtual objects | new virtual object,按照向导完成配置。

21.Recovery Scenarios的使用,在运行脚本的过程中,可能会出现一些非预期的时间、错误、程序崩溃等情况,阻止脚本继续执行下去,测试测试脚本可能会一直暂停执行,直到某些界面操作被执行才能恢复。Recovery Scenarios的使用就是为了处理这些错误。方法:1.Resource丨Recovery Scenarios Manager,出现设置界面后,点击  按钮,新增Recovery Scenario,点击下一步,选择触发事件(有4种类型:1.Pop-up window:测试过程中出现某个窗口。 2.Object state:在测试运行过程中某个对象的属性匹配某个特定的值。 3.Test Run error:某个测试步骤在运行过程中出现错误。)然后按照每个触发器的要求配置完触发器。下一步,选择Recovery Scenario的操作类型(4种,Keyboard or mouse operation:鼠标或键盘操作。Close application process:关闭应用程序的进程。Function Call:掉用函数。Restart Microsoft Windows)下一步,选择指定Recovery Scenarios的某个操作完成之后,如何执行后续的测试脚本。2.File丨Setting丨Recovery,添加刚刚配置好的Recovery Scenarios.

22.QTP描述性编程,测试过程中,有些界面元素是动态出现或者动态变化的,在录制时并没有被添加到对象库,使用描述性编程就是为了与QTP临时创建的对象版本进行匹配。方法:1.使用Description对象2.巧妙使用With简化代码

23.同步点功能,  对象很多时候不能马上就出现,需要等待一段时间,例如网页需要缓冲一定时间,这个时间里如果执行下一步操作,则识别不了对象,这个时候就需要用到同步点功能。方法在录制状态下,选择Insert-->Synchronization Point,选择要同步的对象,设置要同步的属性,我们可以对对象的Enable,visible一类表示状态的属性做同步点。

24.自定义检查点,通过编程方式创建的检查点,对于那些不能使用普通的检查点对象的情况来说会非常有用。方法:自己编写条件语句,判断各种情况。

25.合理使用wait函数,  某些时候录制过程中,页面转跳需要一段时间,这个空白时间可能找不到对象,需要等一段时间,页面完全转跳才可以进行下一步操作。方法:这个时候则需要用到wait函数

26.Function Library的建立于引用,  可以把某些常用的自定义函数放在Function Library中,便于以后的脚本调用。方法:1.new丨Function Library,在里面编辑函数,保存。2.引用,File丨Settings丨Resources,点击添加图标,选择刚刚建立的文件


27.在测试过程中,有些界面元素是动态出现或者动态变化的,在录制时并没有被添加到对象库中,如何让这些测试运行时的动态出现,界面元素得到控制呢?用描述性编程的方式,编写测试脚本。


四、自动化测试的目的是为了验证软件功能是正确的,经过大量回归迭代之后,证明软件是满足一定质量要求的。要循序渐进的展开自动化测试,不要,一开始把自动化测试想得太大,应该从小的开始,先熟悉工具和自动化测试的基本技能。

自动化测试的优势,快速自执行提高效率,提高测试的重要性,提高测试准确度,更好的利用资源规,提供规范化的过程。

自动化测试,通过自动化执行脚本时,人们能够用最短的时间完成更多测试,并且可以更高的,频率执行测试,从而降低测试成本,提高测试效率,这是优点的最终目的。但是自动化测试要,必要的评估性投入和产出比。哪些地方需要花费大量时间跟人力进行手工测试的,可以用自动化测试策略作为切入点。

自动化测试跟手工测试的产品是自动化测试,要有特定的测试任务,回归任务,相对稳定,且界面改动比较少的功能测试,人工容易出错,大量组合型,测试和重复性测试的任务。项目时间压力不太大,被测软件具有很好的可测性,拥有运行时所需要的硬件资源。项目压力,时间大的,一次性项目或者周期很短,需求不明确,或者需求变化较快,适应性测试或者验收测试比较多的,产品功能和设计页面都还不太成熟的,不适合用自动化。自动化测试是一个长期的过程,不能期望自动化测试,在短时间内找到很多半个自动化测试,只有在长期多次运行后,才能体现出它的价值。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值