51Testing软件测试论坛

标题: 各项信息都一样的LINK怎么判断! [打印本页]

作者: sean007    时间: 2009-6-3 11:05
标题: 各项信息都一样的LINK怎么判断!
Set ot = Description.Create()
ot("micclass").Value ="WebElement"
ot("html tag").Value = "UL"
wait(5)
Set clink = Browser("------------------------------").Page("--------------------------").ChildObjects(ot)
wait(1)
linkmsg = clink.count
For i = 9 to linkmsg -4
                link = clink(i).GetROProperty("innerhtml")
                a = split(link,"title=",-1,1)
                b = a(1)
                c = split(b," ",-1,1)
                hotelname = c(0)
           wait(3)
          Browser("--------------------").Page("------------------------------").Link("innertext:="&hotelname,"innerhtml:="&hotelname,"text:="&hotelname,"outertext:="&hotelname,"name:="&hotelname).ClickNext
这句话在执行的时候碰到了 页面上有两个相同属性的LINK,头很大 怎么办?
我基本把这个LINK属性全部都写出来了!但是用SPY看的时候 原来这些信息都一样,不一样的就是HEIGHT 17和24之分,但是这个判断不好!
请大虾求助有撒其他方法哇?

[ 本帖最后由 sean007 于 2009-6-3 11:43 编辑 ]
作者: 假装不在    时间: 2009-6-3 11:17
For i = 9 to linkmsg -4
      clink(i).click
next

代码修改成这样就可以了。

::yiwusuoyou:::
低调回帖,华丽路过
作者: sean007    时间: 2009-6-3 11:22
没有这个我试过了!我老大说clink(i).click 不能用i变量的! 只有用固定值!
作者: 假装不在    时间: 2009-6-3 11:29
我看不出你那大片华丽的代码实现的功能不用到什么i变量(link = clink(i).GetROProperty("innerhtml")
a,b,c这些都是变量),
你把里面的属性抽出来搞成描述的方法,你不是搬石头砸自己的脚么。
你老大说不能用i变量你就用j嘛~啥叫只能用固定值,这个测试是你写还是你老大写?什么方法能实现就用什么方法么。::yiwusuoyou:::
建议把这片代码去掉,被别人看到估计....::yiwusuoyou:::
作者: jifeng    时间: 2009-6-3 11:40
如果就是想把所有的链接都点一遍,1楼的方法可行。

没看到你关闭页面的代码,点开后不用关闭吗。
作者: sean007    时间: 2009-6-3 11:41
这个测试是我写的!
哦 好的! 那我应该用什么方法啊!? 我是个初学者!QTP学习中! 和还是个**!
请大哥传授!
小弟不明白!
作者: dreamever    时间: 2009-6-3 12:08
原帖由 假装不在 于 2009-6-3 11:29 发表
我看不出你那大片华丽的代码实现的功能不用到什么i变量(link = clink(i).GetROProperty("innerhtml")
a,b,c这些都是变量),
你把里面的属性抽出来搞成描述的方法,你不是搬石头砸自己的脚么。
你老大说不能用i变 ...

同意.
只要测试脚本能够正确的执行,那么就是成功的,至于是用变量还是常量,我觉的这好象没什么关系。难道说脚本使用变量执行得到的结果就是不可接受的,只能使用固定值?反正我是没听说过。
作者: codeh    时间: 2009-6-3 12:14
用QTP录一遍,录制的时候多点几个link,看回放是否正常。正常说明QTP还是能根据某些属性判断出不同的link,比如index不一样。实在看不到,就看QTP回放结果,看是否使用了smart识别,用了哪些属性
作者: sean007    时间: 2009-6-3 13:37
标题: 回复 7# 的帖子
我的意思是 clink(i).click这个我使用过!不行 脚本运行的时候页面一闪而过
如果当前第10行
那我 clink(10).click 就可以正确找到 然后运行!
作者: sean007    时间: 2009-6-3 13:40
标题: 回复 2# 的帖子
我把属性值取出来 是应为 clink(i).click 这个方法不行!
所以我只好吧取出来的属性付给变量 比如123 然后在BROWSER里面让他找LINK 是123的!
作者: peterz    时间: 2009-6-3 13:42
DOM试试
作者: 假装不在    时间: 2009-6-3 13:47
原帖由 sean007 于 2009-6-3 13:37 发表
我的意思是 clink(i).click这个我使用过!不行 脚本运行的时候页面一闪而过
如果当前第10行
那我 clink(10).click 就可以正确找到 然后运行!


如此神奇让我不知所措。
仔细检查自己的脚本。应该是哪里写错了。
作者: sean007    时间: 2009-6-3 13:50
标题: 回复 12# 的帖子
恩恩恩 好的!我看看! 不清楚到底错在哪里 哇哈哈!自己慢慢再琢磨吧!呵呵!
作者: sean007    时间: 2009-6-3 14:13
大哥们谢谢 突然发现小弟犯了一个很严重的错误哇哈哈!
搞定了! 小弟 的失误失误!
改被P 被P HEHE !谢谢大侠指点!
在看看代码的时候恍然大悟呵呵!
作者: 假装不在    时间: 2009-6-3 17:41
::yiwusuoyou::: 没有大吃一斤吗?
作者: fei.ge    时间: 2009-6-3 21:51
原帖由 sean007 于 2009-6-3 14:13 发表
大哥们谢谢 突然发现小弟犯了一个很严重的错误哇哈哈!
搞定了! 小弟 的失误失误!
改被P 被P HEHE !谢谢大侠指点!
在看看代码的时候恍然大悟呵呵!


可以把你的错误拿出来分享一下,让大家看看,免的有人再犯你同样的错误……

嘿嘿
作者: ziheng198688    时间: 2009-6-5 15:18
原帖由 sean007 于 2009-6-3 11:22 发表
没有这个我试过了!我老大说clink(i).click 不能用i变量的! 只有用固定值!

不是吧 我一直用的变量 都可以的啊 有时运行无法通过可能是对象的属性值没有wait到特定的值 楼主可以在click之前wait一下
作者: sean007    时间: 2009-6-8 18:13
哇哈哈 大家都 被忽悠了! 我也是听了假装不在 然后自己一步一步看看 在去 思考下的呵呵!
看看我当前去的属性 哇哈哈! 我取的是一个WebElement的不是一个LINK的对象 哈哈!当然点击无效咯 哈哈!
后来找了个 LINK对象 属性名是 Hotelname的 哈哈!就成功了!恩恩恩 用变量是可以的!
所以小弟 的低级失误 哇哈啊哈!




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