QTP如何做关联?
QTP11,系统win2003,需要添加一条数据然后选择这条数据,删除。在loadrunner中,这种情况可以做关联,在QTP中 怎么办呢?由于录制时候与运行脚本时候添加数据的ID是不一样的,运行脚本时候 找不到录制时的ID,新手求教。。。 有人么?QTP的这种关联是怎么做的? 新手求助!! 回复 3# cuijianwww不是很明白,不过QTP是可以在运行时,获取这个控件在运行时的值进行操作
可以使用描述性编程解决 回复 4# 黑羽祭
就是我录制脚本时候,添加了一条数据,系统给的ID是1,删除时候选中ID为1的数据,点击删除。但是我在运行脚本时候,添加了一条数据,系统肯定两次给的是不一样的ID,比如ID是2,删除时候,脚本里写的ID还是1,那么ID为1的数据就找不到了,就会报错。怎样解决? 这种情况在loadrunner中做个关联就可以了,但是QTP中不知道是怎么处理的。新手求教。。。 用childobject+getroproperty实现的 getRoproperty 拿对象属性啊。。。QTP 里没有关联这一说。。。。。
你说的关联应该是指TO 和RO的关系:lol 那是楼上你不懂而已。 回复 7# 云层
呃。。。云层老师能说的具体点么?刚接触QTP。。。 回复 10# cuijianwww
这个在平时的使用中经常遇到,我都是使用getRoproperty + 描述性编程来完成。
1.用getRoproperty 获取当前页面上的id值2至一个变量MyID,然后根据属性表述如 XXXXXX(“name:=MyID”).Click (例子随便写的)进行操作
2.如果是表格里的点选点击删除,还是先getRoproperty 获取当然的ID,然后把WebTable保存成对象otable,用otable.GetCellData(i,j)得到指定表格内容,然后和当前ID比对,一样的则勾选,点击删除按钮
想看看 云层 的比较正式的答案是什么。 简单写一下,其实到处都有类似的写法
set ob=descrption.create()
ob("html tag").value="A"
set x=browser(":=").page(":=").childobjects(ob)
for i=0 to x.count-1
print x.item(i).getroproperty("innerttext")
next
这样就可以获得当前页面上所有超链接对应问文字了。。。 概念上来看,也就是一个参数化的问题。只需要将所有ID=1这个常量替换成ID=intID或者DataTable("ID",dtLocalSheet)等变量即可,包括对象库中与该ID相关的对象属性的值也需做参数化。
ID的值可以用GetROProperty,Output Value等方式去获取系统给的ID。然后,一切就都搞定咯。 呵呵~继续关注~~~~~ :victory: 回复 1# cuijianwww
你的问题我遇到过,可是QTP并没有关联,你只能获取孩子节点。不过具体方法希望你能找到。 :)
页:
[1]