无法在类水豚中找到课程

时间:2016-10-16 03:28:24

标签: selenium ruby-on-rails-4 rspec capybara chrome-web-driver

我的HTML代码是:

<button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">&times;</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

1 个答案:

答案 0 :(得分:2)

默认情况下,Capybara找不到不可见的元素(通常是'sr-only'类的任何东西),即使你告诉它找到不可见的元素(通过visible:false(或:隐藏/:全部)选项)您将无法单击该元素,因为用户无法单击不可见的选项。看起来你想点击关闭按钮,所以如果你正在使用Capybara 2.10+你应该可以做到

click_button(class: 'close')

如果使用较旧的Capybara,你应该能够做到

find('button.close').click