guopeihua 发表于 2010-3-26 10:08:34

QTP对象属性参数化

QTP脚本为:
Browser("管理员").Page("管理员").Frame("main").Image("图片").Click
这个对象名“图片”,包含了几个属性,其中html id ="ext-gen1714",但是由于代码的问题,重新打开一个新页面后,这个图片的html id会改变,变成 html id ="ext-gen1916",这样导致回放脚本时找不到对象,我想能不能把对象的属性用正则表达式表示。但是现在还不知道这种方式是否合理,请大家指点。谢谢大虾们了

sunzhenguo1010 发表于 2010-3-26 10:26:00

可以用正则表达式做

ls_721521 发表于 2010-3-26 10:34:39

html id ="ext-gen.*"

shotstar 发表于 2010-3-26 10:37:16

可以用正则表达式做,但是要看你的页面是否只有这个图片是类似 ext-gen****格式的,如果有多个要考虑index。
如果该页面图片不多,也可以考虑将该对象在对象库中的识别属性中去掉html id,换成其他的方便识别的属性。

guopeihua 发表于 2010-3-29 14:25:48

我直接在对象仓库里修改html id的属性为 ext-gen.*后,回放时提示找不到此对象。正则表达式是直接就在对象仓库里面改就可以了吗?

shotstar 发表于 2010-3-29 14:45:13

回复 5# 的帖子

不是直接改的,你点输入值的地方,应该有看到右边有个 <#>的小按钮,点击他,弹出窗口里面勾选上正则表达式,他会提示你是否要给代码里的特殊字符加\,不管他,选no,反正你已经写好正则表达式了,然后把你的正则表达式贴进去,点确认,之后你会发现这时候对象库的那个属性值前面多了个符号。
页: [1]
查看完整版本: QTP对象属性参数化