【自动化测试工具】QTP11.5/UFT快速入门
2、选择File菜单下New-Test。
选择GUI Test,输入Name“第一个脚本”,Create。
3、打开IE,进入百度首页www.baidu.com。
4、使用Tools菜单下的ObjectSpy。5、点击手型按钮,点击后鼠标变为手型,再点击浏览器上的“百度一下”按钮。
6、正常识别结果如图:
未能识别结果如图:
如果未能识别对象:
1、检查QTP版本、浏览器版本、操作系统版本,QTP安装目录“\help”下的QTP_PAM.pdf或UFT_PAM.pdf文件提供了支持的操作系统、插件版本、web-addin支持的浏览器及版本、支持的其他HP工具及版本等信息。1.1、例如测试WEB时,可以从这个PDF文档里得出支持的组合如XPsp3+QTP11+IE8,Win7+UFT11.5+IE9,UFT11.53+Chrome30,不支持组合如QTP11+FireFox27。
1.2、QTP11官方提供了IE9补丁,安装后可以识别IE9对象。
1.3、64位系统下的IE也分32位和64位,例如QTP11测试64位IE,还需要64位补丁。
QTP11补丁:http://blog.csdn.net/zzxxbb112/article/details/6968418
QTP11.5补丁:http://www.iquicktest.com/uft-qtp11-5-patches.html 2、检查IE是否加载了BHOmanagerClass。IE设置-Internet选项-程序-管理加载项-所有加载项。如果BHOmanager Class是未启用状态,改为启用。
如果所有加载项中没有BHOmanager Class,打开开始菜单-HP Software-HP Unified Functional Testing-Tools-AdditionalInstallation Requirements,勾选“配置Internet Explorer 设置”,运行。
FireFox附加组件-扩展中应有Unified Functional Testing Extension。
Chrome工具-扩展程序中应有Unified Functional Testing Agent。
3、以管理员身份运行QTP。 4、如果仍不能识别,尝试关闭其他程序、关闭杀毒软件,先打开QTP后打开IE再识别。 第一个脚本: 1、打开QTP,加载Web add-in。 2、打开IE,进入百度首页www.baidu.com 3、打开QTP本地对象库,打开Resources菜单下的ObjectRepository
4、添加对象到本地对象库。
Object菜单下的Add Object to Local
点击OK后,就出现在对象库了。
选中wd对象,使用View菜单下的Highlight in Application,如果浏览器中的输入框闪烁说明QTP能正确定位对象。
以相同步骤添加“百度一下”按钮
5、刷新Toolbox以显示新添加的对象。刷新后界面
6、拖拽wd对象到右侧编辑区(或双击wd对象):
7、拖拽“百度一下”对象到编辑区(或双击对象)
点击Run
运行后结果:
代码结构:
父对象Class(“父对象Name”).子对象Class(“子对象Name”).方法 [参数]实例:对象库如何工作: 1、添加“百度一下”按钮到对象库(参考“第一个脚本”1-4步),使用Highlight可以定位对象。如图,“百度一下”对象的name属性是“百度一下”。
2、修改“百度一下”对象的name属性为“百度一下修改”,并将“Enable Smart Identification”的Value改为False。再使用Highlight,QTP提示错误“不能在应用中找到选择的对象”。
修改前代码:
input id="su"onmouseout="this.className=bg s_btn"onmousedown="this.className=bg s_btn s_btn_h"type="submit"value="百度一下"/ 修改后代码: input id="su"onmouseout="this.className=bg s_btn"onmousedown="this.className=bg s_btn s_btn_h"type="submit"value="百度一下修改"/ 修改后页面:修改后在对象库中选择“百度一下”对象使用Highlight,QTP又能正确定位了。
4、修改“百度一下”按钮位置,如图:修改后在对象库中选择“百度一下”对象使用Highlight,能正确定位。
5、复制“百度一下”按钮代码,在页面上再添加一个按钮,修改后如图修改后在对象库中选择“百度一下”对象使用Highlight,能正确定位。QTP提示错误:有多个符合描述的对象。
添加界面上两个“百度一下”按钮到对象库,现在对象库里有三个“百度一下”按钮对象,对比属性,只有ordinal identifier部分不一样。
界面只有一个按钮时添加的对象Type,Value值是None界面有两个个按钮时添加的对象Type,Value值分别是”index,1”和”index,2”
对象库工作模型:
1、添加对象时:1.1、QTP Spy被测软件被选中的对象,获取对象的属性集合和对象类型。 1.2、按照Object Identification中相应对象类型的设置,筛选属性集合后存入对象库。 1.3、打开Tools菜单下Object Identification,如图,以WebButton为例。
QTP读取对象库中Class是WebButton,name是“百度一下”的对象,获取属性集合(TO)。
2.2、获取被测软件上的对象集合。 2.3、获取第一个对象的属性集合(RO)。对比RO和TO。 2.4、如果属性值不一致,获取第二个WebButton对象的属性集合后对比。如果属性值一致,则触发WebButton对象的方法。关于录制: 使用录制后可以看出录制自动完成了添加对象到对象库和在编辑区输入脚本(对象、方法和参数)的过程。但录制经常有步骤缺失的问题,比如实际点击某个页面对象A但录制结束后对象库中没有对象A,编辑区也没有相关代码。不补全脚本就Run就会报错了。
使用QTP帮助文档: 在编辑区选中Browser("").Page("").WebEdit("")下的Set 按F1,帮助文档会自动定位到Web WebEdit Object Methods Set Method,帮助文档提供了语法、参数说明、返回类型和例子,查看Example可以看到代码示例。
检查点 1、新建一个脚本,在百度知道(http://zhidao.baidu.com/)页添加关键字输入框和搜索答案对象,添加后如图:
输入以下脚本:
2、执行后打开对象库,选择”word”对象使用Highlightin Application,在搜索后的百度页面仍能定位。
3、使用Object Spy查看搜索后页面的文本框,查看value属性,值为“QTP”。删除文本框内容后使用Object Spy,查看value属性,值为空,如图。 所以这里可以用对象“word”的value属性值判断功能是否正确。4、修改脚本如下,修改后Run。
5、运行后打开View菜单下的Last RunResults。
如图, Property "value" has the expected value:"QTP".对象“word”的value属性的值是期望的“QTP”,检查点Pass。
参数化 1、在Global表中输入多行数据,并修改脚本如下。
2、打开File菜单下的Settings,设置Run如下。
3、Run脚本,可以看到执行过程中依次搜索了Global表中的数据,打开Last Run Results,可以每次迭代的结果,如图,每次迭代检查点都有记录。
4、选中Global表中有数据的行,在右键菜单中选择Delete删除行。
注意,如果删除了表格中的内容——比如用键盘的退格和删除,而有黑线的行仍是三行(如图),还是会迭代三次。
5、在Action1表中输入多行数据,并修改脚本如下,注意脚本和使用Global表时不同。
6、打开View菜单下的TestFlow。
右键Action1,在菜单中选择Action Call Properties。
设置如下。
7、Run脚本,可以看到执行过程中依次搜索了Action1表中的数据,打开Last Run Results可以查看结果。
参数化迭代流程图 A:一个脚本可以有多个Action。 B:File-Settings-Run下的设置控制脚本的迭代。 C:Action CallProperties-Run下的设置控制Action的迭代。一个迭代实例 1、新建GUI Test,选择Design菜单下的Call toNew Action
点击“OK”后添加了一个action。
2、在Global表添加两行数据“Global第1行”和“Global第2行”;Action1表下添加两行数据“Action1第1行”,“Action1第2行”;Action2表下添加两行数据“Action2第1行”,“Action2第2行”。
3、修改File-Settings-Run设置为Run on allrows。修改Action1和Action2的Call Properties-Run设置为Run on all rows。 4、在Action1和Action2的编辑区输入下图脚本。5、Run脚本,可以看到弹窗出现16次,依次如下:
Global第1行 Action1第1行 Global第1行 Action1第2行 Global第1行 Action2第1行 Global第1行 Action2第2行 Global第2行 Action1第1行 Global第2行 Action1第2行 Global第2行 Action2第1行 Global第2行 Action2第2行Web、移动端、桌面端自动化测试工具或框架推荐 目前自动化测试可谓是人人在提,而且自动化工具和一些开源框架也是层出不穷。截止现在,我也接触了一些自动化的知识,分享下。
python接口自动化(四)--接口测试工具介绍(详解) 如果有工具,可以大大提高你的效率,可以达到事半功倍,但是不是所有工具都能够支持你完成这个任务。下面我们就来挑选几个常用和常见的工具,简单介绍一下。如果需要或者有兴趣可以在网上查看各种工具对应的资料进行深入人的学习,这里带领大家了解一下,碰到这些工具会用、了解、知道这些工具就达到目的了,不要到时候说到测试工具,一问三不知,一脸懵逼,那样就尴尬
APP自动化效果测试工具 项目测试过程中经常需要在手机端体验语音产品的识别效果和稳定性,识别效果与手机硬件强相关无法抛开硬件影响。因此开发了一套基于uiautomator2+python UI自动化工具,可以实现在电脑端控制手机demo开始收音+播放待测音频+保存识别结果的APP自动化效果测试工具。
干货 | 一文搞定 uiautomator2 自动化测试工具使用 ![](https://ceshiren.com/uploads/default/original/3X/f/a/facb6e29bf503b39571011963faf36c586c673c0.jpeg) Google 官方提供了一个 Android 自动化测试工具(Java 库),基于 Accessibility 服务,功能很强,可以对第三方 App 进行测试,获取屏幕上任意一个 App 的
干货 | 一文搞定 uiautomator2 自动化测试工具使用 ![](https://ceshiren.com/uploads/default/original/3X/f/a/facb6e29bf503b39571011963faf36c586c673c0.jpeg) Google 官方提供了一个 Android 自动化测试工具(Java 库),基于 Accessibility 服务,功能很强,可以对第三方 App 进行测试,获取屏幕上任意一个 App 的
相关文章
- 【自动化测试工具】QTP/UFT入门
- 腾讯荣获2022数据中心科技成果奖!超强技术助力自动化运维
- 干货 | 一款开源自动化安全漏洞利用和测试工具Metasploit超详细快速入门指南
- 前端自动化测试
- ACL 2022选举结果公布!中科院自动化所宗成庆当选新一届副主席
- 云函数实现网站自动化签到配置详解【Web函数/Nodejs/cookie】
- yyds,Elasticsearch Template自动化管理新索引创建
- Redis自动化安装及集群实现搭建过程
- MySQL数据库定时器:自动化时间更新(mysql数据库定时器)
- Linux自动化运维:智能化解决IT部署未来之路(linux自动化运维工具)
- MySQL通过CMD登录的自动化操作方法(cmd登陆mysql】)
- Oracle中操控数字FM实现自动化数据处理(oracle中的数字FM)
- AI、自动化为硬核:更技术范儿的DJI RoboMaster机器人挑战赛