4

我在我的js: true请求规范中运行以下内容:

page.evaluate_script("$('#sign-up').click();")

这成功打开了模态。但是,无论规范中的下一步是什么,webdriver 都会在此时冻结。长时间的停顿后,我得到:

 Failure/Error: 
 Timeout::Error:
   Timeout::Error
 # ./spec/requests/my_spec.rb:14:in `block (3 levels) in <top (required)>'

在这种情况下,我想使用evaluate_script而不是“click_on”,因为该特定链接上没有href属性(click_on 不起作用)。如何让它在不超时的情况下工作?

4

1 回答 1

4

这是由于 Selenium 中的一个错误。在这里找到答案:https ://groups.google.com/forum/?fromgroups=#!topic/ruby-capybara/YcZwyPdMJFU

替换为以下内容时它不会挂起page.evaluate_script

page.driver.browser.execute_script
于 2012-08-25T20:21:37.383 回答