以前查看过对象参数化的资料说SetTOProperty 方法可以进行对象的参数化,但一直没有自己亲自实践一下,今天终于自己试了试确实如此,就其原理还是要归根到对qtp脚本运行的原理的理解上,SetTOProperty 可以修改对象库中的属性的值,而qtp脚本在运行的时候要匹配对象库中的对象和运行时的对象(对象的匹配当然是要依靠对象的属性去定位),如果匹配成功才能定位到对象,所以就会考虑到将对象库中对象的属性值进行参数化,这里SetTOProperty并不是真正的改变了对象库中属性的值而是在脚本运行的过程中动态的去修改,当脚本在运行结束的时候,查看属性值仍然为修改前的值
这里就不多说了,接下来总结了几种对象参数化的方法:
第一种:使用Description 对象
第二种:使用描述性编程
第三种:使用SetTOProperty 方法
第四种:通过对象库中参数化对象
前2种方法特点就是不依赖对象库,运行的时候可以将对象库中对应的对象删除,后面2种将依赖对象库
例子:产品中的查询日志页面的翻页功能的link对象
原代码如下:
Browser("xx").Page("xx").Image("s").Click
Browser("xx").Page("xx").Image("s_2").Click
Browser("xx").Page("xx").Link("查看日志").Click
Browser("xx").Page("xx").Frame("WorkArea").WebEdit("EVENT_TIME_BEGIN").Object.value="2010-11-13 9:00:00"
Browser("xx").Page("xx").Frame("WorkArea").WebEdit("EVENT_TIME_END").Object.value="2010-11-24 9:00:00"
Browser("xx").Page("xx").Frame("WorkArea").WebButton("提 交").Click
Browser("xx").Page("xx").Frame("WorkArea").Link("10").Click
以下将参数化Link对象,使其能分别按10,20,50 数进行翻页显示
'------使用Description 对象----
Set Desc=description.Create()
Desc("text").value=v_page
Desc("index").value=0
Desc("html tag").value="A"
Browser("xx").Page("xx").Frame("WorkArea").Link(Desc).Click
'-----------使用描述性编程--------------------
Browser("xx").Page("xx").Frame("WorkArea").Link("text:="&v_page,"index:=0","html tag:=A").Click
'--------------使用SetTOProperty 方法------------(依赖对象库),这里可以用GetTOProperty方法查看我们修改的属性值
Browser("xx").Page("xx").Frame("WorkArea").Link("10").SetTOProperty "text",v_page
Browser("xx").Page("xx").Frame("WorkArea").Link("10").Click
'-----------通过对象库中参数化对象-----------(依赖对象库)需要在对象库中将Link对象本身进行参数化
Browser("xx").Page("xx").Frame("WorkArea").Link("10").Click
分享到:
相关推荐
QTP脚本参数化,初步交代QTP脚本的使用方式、方法
QTP对象库简介
qtp中使用编程方法实现参数化。 qtp中使用编程方法实现参数化。
QTP参数传递的三种方法
QTP对象识别常用方法介绍
本人调试无错的QTP订机票参数化测试代码
QTP入门-检查点输出值参数化 录像 检查点 输出值 参数化 同步点 1.检查点 目的: 检查点比较指定属性的当前值与期望值,以判断当前的程序(或站点)功能是否正常。 在密码正确的情况下预期结果是进入主界面,检查...
QTP处理验证码的一种方法QTP处理验证码的一种方法QTP处理验证码的一种方法QTP处理验证码的一种方法
QTP对象库XML文件 XML QTP
QTP描述性编程,参数化,读取excel,数据库
QTP对象识别、QTP测试流程、QTP错误处理机制和虚拟对象的使用。
QTP对象识别常用方法
本资料主要是对QTP对象识别方法进行全面的介绍,希望对大家有用
第12篇-QTP对象探测器 第12篇-QTP对象探测器
QTP 对象识别方法汇总,总结的非常全面。如果有一定的基础,相信一定受用了
第14篇-QTP对象管理机制(2) 第14篇-QTP对象管理机制(2)
第13篇-QTP对象管理机制(1) 第13篇-QTP对象管理机制(1)
QTP自动化对象模型中文版
(1)理解和掌握自动化测试的基本原理和方法。 (2)掌握QTP标准检查点的设置方法。 (3)掌握QTP动态捕捉信息与循环脚本的设计的方法。 2实验要求 (1)使用QTP对订票程序的Insert order功能进行测试,验证订票是否...