我的HTML代码是:
<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
我试过了:
1. find(:xpath, "//span[@class='sr-only']").click
2. page.find('.sr-only',visible: false).click
但无法找到元素&#39; sr-only&#39;。如何找到它?
我得到的例外是:
Selenium::WebDriver::Error::ElementNotVisibleError:
element not visible
注意使用chrome webdriver + selenium
答案 0 :(得分:2)
默认情况下,Capybara找不到不可见的元素(通常是'sr-only'类的任何东西),即使你告诉它找到不可见的元素(通过visible:false(或:隐藏/:全部)选项)您将无法单击该元素,因为用户无法单击不可见的选项。看起来你想点击关闭按钮,所以如果你正在使用Capybara 2.10+你应该可以做到
click_button(class: 'close')
如果使用较旧的Capybara,你应该能够做到
find('button.close').click