51Testing软件测试论坛

标题: 如何点击动态变化的链接 [打印本页]

作者: spartan    时间: 2008-3-21 12:01
标题: 如何点击动态变化的链接
现在有页面A, B两个页面。
点击页面A上的链接"001",然后点击可以进入B页面。
但是等我,下一次在A页面上的时候, 同样位置的链接,会变化为:"002", 请问脚本中如何设置,可以让SILKTEST自动去点击"002"或者"003"链接呢?

谢谢了!
作者: yayali    时间: 2008-3-21 16:50
描述性编程可解决动态变化对象的问题。
作者: jmy_1981    时间: 2008-3-23 15:05
标题: 2#的朋友是指类似QTP里面Description Programming吗?
原帖由 yayali 于 2008-3-21 16:50 发表
描述性编程可解决动态变化对象的问题。


如题。

如果是的话,可以给一个简单的ST的例子吗?

希望能和你进一步探讨。
作者: jmy_1981    时间: 2008-3-23 15:21
标题: lz可以给一个贴图看看吗?
如题。

lz我们把问题拆开来一步一步看,

1. 链接(link),对象是会变化吗?
我的意思是,你第1次录制得到的对象是HtmlLink class,第2次是HtmlText class,第3次是HtmlPushButton……
这样,问题就比较复杂,我能给你的解决办法是外围写一个dll,传回对象给ST。

2. 链接(link),对象属性标识(tag)是全部变化的吗?
ST正确找到对象,是通过tag来确认的。
tag 有"Window ID","Caption","Prior text","Index","Location","Attributes"。

lz可否检查一下,这几种tag是不是同时在变,有没有不变的,可以通过不变的那个来表示对象。
比如:"Caption"在从"001"变到"002","003",但是可能这个对象的"Index"时钟都是"A"或者别的什么,那"Index"可以拿来做为标识。

3. 链接(link),对象属性标识(tag)变化有规律吗?
如果遇到比较糟糕的情况,tag都在变,但是有规律的变化,像"001"到"002","003",你可以尝试用通配符或者正则表达式看看。比如:"001"到"002,"003"你可以用?来试试,像"00?"通配一个字符。

希望有帮助。
作者: kettleyang    时间: 2008-3-27 15:03
public void ClickLink(STRING LinkName)
       LIST OF WINDOW lw=Object.GetChildren()
       window w
       for each  w in lw
        if w.GetClass()==HtmlLink&&w.GetCaption()==LinkName
                 w.Click()
     你这么用就可以 你也可以 用 LIST OF WINDOW lw=Object.GetContents() 也可以
   kettlescott@hotmail.com




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