我无法使用Watir选择链接元素

时间:2012-10-16 14:07:12

标签: watir

这是我正在使用的Watir代码:

require 'watir-classic'
browser = Watir::IE.new
browser.link(:class, "Wizardbutton").exists?

以下是页面HTML的一部分,其中包含我尝试检查的链接是否存在。

<tr>
    <td align="left" style="vertical-align: top;">
        <a class="Wizardbutton"href="javascript:parent.showPopup('/web/wizard.html');window.focus();">
            <span>Add new Team</span>
        </a>
    </td>
</tr>

我得到的错误是:

Watir::Exception::UnknownObjectException: Unable to locate element, using {:tag_name=>["a"], :class=>"Wizardbutton"}

为什么我在HTML源代码中可以清楚地看到链接元素不存在的错误?我已成功点击页面上的其他链接但由于某种原因我看不到这个。嵌入式span标签是否会搞乱?我也试图选择使用href,但也没有用。任何见解将不胜感激!

2 个答案:

答案 0 :(得分:3)

好的,这个谜就解决了。在与Watir合作时,iframe是一个主要问题。除非您专门选择iframe,然后在iframe中选择项目,否则属于iframe一部分的元素将不可见。所以例如代码

browser.frame(:name, "nameOfFrame").link(:class, "Wizardbutton")

表示为我提供名称属性为“nameOfFrame”的iframe,然后选择类属性为“Wizardbutton”的链接。

答案 1 :(得分:2)

我也遇到了同样的错误。有时,如果它存在于div或tables标签内,则watir无法找到浏览器控件。在您的情况下,链接控件放在表中。请试试这个

browser.table(:class=> "classname").link(:class => "Wizardbutton")

希望这会对你有所帮助

相关问题