如何区分具有相同类但具有唯一aria-labelledby属性的元素

时间:2014-11-11 20:09:03

标签: jquery-ui modal-dialog watir-webdriver

作为Watir-Webdriver测试脚本的一部分,我试图单击弹出的jQuery UI模式对话框窗口中的按钮。

弹出模态对话框(我可以在浏览器中看到它)。但是,在使用:class检查div是否存在时,它会返回false

我认为问题在于有4个具有相同类的div,前三个具有display:none。所以,我试过了:

   @browser.elements(:css => '.duplicate_class')[3].present?

看看我是否可以选择div。这返回了Net::ReadTimeout错误。

没有id属性,但每个div都有一个唯一的aria-labelledby值。我不完全确定如何使用:aria-labelledby作为属性(不确定这是否会起作用)。

不幸的是,我无法提供任何代码。我知道这会妨碍任何帮助,所以我感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

鉴于aria-labelledby属性是唯一的,我会尝试使用它:

@browser.div(:aria_labelledby => 'the_attribute_value').present?

请注意,当在定位器中使用aria属性时,需要用下划线替换短划线。