51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 3674|回复: 4
打印 上一主题 下一主题

[求助] 使用描述性语言,属性值中带有括号,qtp无法识别??

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-8-19 17:30:38 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
按钮的截图见附件
使用spy抓取到的按钮的label值为"刷新(F)"、"关闭(C)"、"帮助(H)"
但是,使用JavaWindow("title:=窗口","displayed:=1").JavaButton("label:=关闭(C)").Click 总是报错,JavaButton对象不能识别
但是,如果修改成JavaWindow("title:=窗口","displayed:=1").JavaButton("label:=关闭.*").Click 却是可行的。
上面还可以使用.*混过去,但是有个需求,是JavaWindow右键菜单JavaMenu的所有名称,然后,在依次打开每个JavaMenu菜单。

写了一个function,
        Set Desc = Description.Create()
        Desc("to_class").Value = "JavaMenu"
        Desc("enabled").Value = "1"
        Desc("displayed").Value = "1"
        wait (1)
        set subMenuObj = JavaWindow("title:=窗口","displayed:=1").ChildObjects(Desc)
         subMenuNum = subMenuObj.Count
        For i = 0 To subMenuNum - 1
        subStr = subMenuObj(i).getROProperty("label")
        Set ZxFindJavaMenuObj = JavaWindow("title:=窗口","displayed:=1").JavaMenu("label:=" & Trim(subStr))
         ZxFindJavaMenuObj.select
        Next
如果subStr包含(),就无法识别,无法打开,其他的值都可以,中文,英文,小数点,/,数字等都试过了

是不是括号需要转义,我把它转成asc码,也无法识别,JavaWindow("title:=窗口","displayed:=1").JavaMenu("label:=菜单" &chr(40)&"C"&chr(41))
请问高手们,如何解决啊,谢谢大家了~~~

[ 本帖最后由 gaohui 于 2009-8-20 09:05 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2009-8-20 19:50:30 | 显示全部楼层
谢谢各位!~~
哈哈,可以了!原来需要正则表达式转换!
我好土哦。。。O(∩_∩)O哈哈~
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-5-11 02:31 , Processed in 0.065124 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表