51Testing软件测试论坛

标题: 使用QTP时有关弹出框的问题 [打印本页]

作者: jiangdanyang    时间: 2007-8-2 10:11
标题: 使用QTP时有关弹出框的问题
有谁知道用QTP如何获取弹出框的内容吗?
如输入密码,我输入的位数不对,会提示"密码长度为5-8位",那我怎样取出该提示信息并保存到Excel或其它文本文件中?
先谢谢解答!
作者: sidneylover    时间: 2007-8-2 10:25
去好好看看GetRoProperty方法是怎么用的吧
作者: jiangdanyang    时间: 2007-8-2 10:36
能不能说的详细一点啊?GetRoProperty方法,QTP教程里有吗?
作者: jiangdanyang    时间: 2007-8-2 13:18
哪位高手能解答一下
作者: jiangdanyang    时间: 2007-8-2 14:51
高手何在?
作者: gz_xie    时间: 2007-8-2 15:27
俺不是高手。
加对象的时候把Static加上。

Browser("Sina").Dialog("Microsoft Internet Explorer").Static("Same").GetVisibleText(TOP)
作者: jiangdanyang    时间: 2007-8-2 15:44
xie xie jie da!
作者: zhuyuancan    时间: 2007-8-2 17:05
不错,以前没用过getvisibaltext方法,,还挺好用啊!!哈哈!!谢谢
作者: danmy    时间: 2007-8-2 22:06
原帖由 gz_xie 于 2007-8-2 15:27 发表
俺不是高手。
加对象的时候把Static加上。

Browser("Sina").Dialog("Microsoft Internet Explorer").Static("Same").GetVisibleText(TOP)


不用加static直接在dialog上getvisibletext,然后处理字符串就可以了。因为staic有时候不方便放在对象库里(比如它的上层有可能是dialog,也有可能是frame)
作者: jiangdanyang    时间: 2007-8-3 09:46
标题: 回复 #9 danmy 的帖子
非常感谢你的回答,但我不是很懂vbs,还不是很明白你的意思,能不能举个简单的例子啊! 谢谢!
作者: jiangdanyang    时间: 2007-8-6 10:10
Browser("Sina").Dialog("Microsoft Internet Explorer").Static("Same").GetVisibleText(TOP) [/quote]

static("Same")中的same是什么?是不是固定的
GetVisibleText(TOP)中的TOP指什么?
先谢谢解答!
作者: flyskypei    时间: 2007-8-6 10:58
标题: 个人理解
same,指相同的dialog
top:指相同的dialog中最上面的那个,获得最上面那个的text
作者: jiangdanyang    时间: 2007-8-6 12:58
xie xie lou shang jie da!
作者: jiangdanyang    时间: 2007-8-6 14:46
为了帖子不被打沉,被迫灌水.请谅解!
作者: jiangdanyang    时间: 2007-8-6 19:17
为了帖子不被打沉,被迫灌水.........
作者: jiangdanyang    时间: 2007-8-7 17:48
如果弹出对话框就获取上面提示信息并与表中的信息对比,不统一证明弹出的提示出错,主要用来验证
 if browser("web_name".dialog("dialog_name").exist(1) then'如果不出现=false
error_message=browser("web_name".dialog("diaglog_name".static("用户密码错误!").getRoproperty("text")
   if error_message<>(datatable.value("error_info"))then
msgbox(error_message)
end if
browser("web_name").dialog("diaglog_name").close
end if
这里我总结了两点技巧:
 一是:对于dialog中,虽然提示信息对象名称是"用户密码错误",但如果信息对象名称是“该用户不存在”,不用更改会自动识别,我想主要是录制第一遍时,“用户密码错误”只是让运行时能找到这个控制,而不管它是什么内容,因为在对象仓库中,text不是决定该对象的属性
二是:如果对于提示信息比较长的,可以用mid(error_message,n,m)取一部份特征提示信息进行验证,这样我想可以节省处理时间,又可以避免长度以及空格等字符的处理

不是很理解上面这段话,哪位能简单的总结一下吗?谢谢!
作者: ourlinux    时间: 2007-8-7 18:00
谢谢了!又多了解一点了.
作者: walker1020    时间: 2007-8-7 23:49
原帖由 jiangdanyang 于 2007-8-7 17:48 发表
如果弹出对话框就获取上面提示信息并与表中的信息对比,不统一证明弹出的提示出错,主要用来验证
 if browser("web_name".dialog("dialog_name").exist(1) then'如果不出现=false
error_message=browser("web ...


这个回复是你copy了别人的回复吧?问一下原作者吧
作者: jiangdanyang    时间: 2007-8-17 11:35
有哪位知道的能否解答一下,谢谢!
作者: jiangdanyang    时间: 2007-8-17 15:26
人呢?
作者: 愤怒的黄瓜    时间: 2010-8-13 09:06
看过QTP的帮助,官方推荐用GetROProperty函数,不推荐用GetVisibleText函数……
::xizao:::
作者: TEST_119    时间: 2010-8-14 10:11





欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2