元素在点(617,690.5)处不可点击.其他元素将收到点击:<th> ... </ th>(Selenium :: WebDriver :: Error :: UnknownError)

vas*_*gen 5 ruby selenium cucumber capybara

我试图按下我试图实现的集成测试上的"添加"按钮时得到上面的错误.我认为这是javascript的延迟,我尝试了以下,但没有一个工作:

Then /^I should click "([^"]*)"$/ do |selector|
  # if page.should have_selector(selector)
  # find(selector).click
  # end
  # page.execute_script("$(#{selector}).click()")
  find(selector).click
end
Run Code Online (Sandbox Code Playgroud)

我尝试了以上所有,但这并没有解决问题.

Nat*_*yer 5

这不是一个很好的答案,但无论如何我都会给它......

在使用Chrome进行测试时,我只看到过这个问题.有两种解决方案对我有用:

  • 使用Firefox而不是Chrome
  • 而不是find(selector).click,使用page.execute_script("$(#{selector}).click()")

但是,既然您已经尝试了第二个选项并且它不起作用,请尝试使用Firefox.对不起:(

  • 老兄我用'click()`遇到了很多问题.使用firefox.所有的事情都解决了.希望我再多投票几次! (2认同)

gue*_*o64 5

我发现调整浏览器窗口的大小可以解决类似的问题:

 Given(/^I open a new browser window$/) do
   Capybara.current_session.current_window.resize_to(1000, 1000)
 end
Run Code Online (Sandbox Code Playgroud)