在Capybara + Poltergeist中显示javascript回溯



我正在开发一个Ruby应用程序,它使用Capybara和Poltergeist来做一些与web相关的事情。

Capybara以如下方式初始化:

Capybara.register_driver :poltergeist do |app|
    Capybara::Poltergeist::Driver.new(app, :js_errors => true, :debug => true)
end
default_driver = :poltergeist
Capybara.default_driver = default_driver
Capybara.javascript_driver = default_driver
Capybara.current_driver = default_driver
Capybara.default_max_wait_time = 30

我知道正在运行的javascript在某些时候失败了,可能是因为拼写错误(但可能是因为其他原因),但是当我运行应用程序(bundle exec rake myapp:console)时,我没有看到任何回溯。我确实看到了调试输出,这几乎没什么用。

我也看到了一些我的console.log调用(我猜我没有看到的调用以某种方式失败或Ruby只是不知道如何打印这些)。

我的问题是:我怎么能看到一些有用的输出,这将有助于我调试我的JS代码?

PS:请注意,整个应用程序都是在Docker中运行的,所以如果你要建议我从Poltergeist切换过来,请记住这一点。

在运行相关页面代码之前,请执行

page.driver.enable_logging

正如这里所提到的(尽管与webkit驱动程序有关),它也应该显示控制台错误。

相关内容

  • 没有找到相关文章

最新更新