Rspec 将幻影与Capybara一起使用时,browser\u logger不会产生输出

Rspec 将幻影与Capybara一起使用时,browser\u logger不会产生输出,rspec,capybara,apparition,Rspec,Capybara,Apparition,我试图通过使用幻影来摆脱恶鬼/幽灵 除了Chrome日志的输出之外,驱动程序的配置工作正常 这是我的驱动程序配置: Capybara.register_driver :apparition do |app| options = { debug: false, headless: true, browser_logger: STDOUT, timeout: 3, ignore_https_errors: true, s

我试图通过使用幻影来摆脱恶鬼/幽灵

除了Chrome日志的输出之外,驱动程序的配置工作正常

这是我的驱动程序配置:

Capybara.register_driver :apparition do |app|
    options = {
      debug: false,
      headless: true,
      browser_logger: STDOUT,
      timeout: 3,
      ignore_https_errors: true,
      screen_size: [1920, 1080],
      skip_image_loading: false,
      js_errors: false,
      headers: {
        "User-Agent" => "Apparition"
      }
    }
    Capybara::Apparition::Driver.new(app, options)
end
我希望看到Chrome的控制台输出与Capybara的混合,但绝对没有生产任何东西

我的语法不正确吗

谢谢,
Shaun

如果我在JavaScript中这样做,例如,
console.log(“foo”)
,我们的Capybara+幻影测试将在运行期间输出它。所以,是的,水豚+幽灵通常有这种行为

尝试删除所有这些选项,然后看看如何操作

下面是一个自包含的
console.log
输出内容的示例。将其另存为
example.rb
,并使用
ruby example.rb
运行它。(示例代码主要来自。)

需要“绑定器/内联”
gemfiledo
来源“https://rubygems.org"
宝石“水豚”
宝石“彪马”
宝石“幽灵”
结束
需要“水豚/幻影”
需要“水豚/dsl”
html=DATA.read
app=proc{env}[200,{“内容类型”=>“文本/html”}[html]}
Capybara.register|u驱动程序:幻影do|app|
水豚::幻影::驱动程序。新(应用程序,
)
结束
sess=Capybara::Session.new(:幻影,应用程序)
sess.访问(“/”)
__结束__
你好
控制台日志(“hi”);
你好,世界

尽管我添加了您使用的所有选项,但本例仍将输出日志,因此可能会发生其他情况

require "bundler/inline"

gemfile do
  source "https://rubygems.org"
  gem "capybara"
  gem "puma"
  gem "apparition"
end

require "capybara/apparition"
require "capybara/dsl"

html = DATA.read
app = proc { |env| [200, { "Content-Type" => "text/html" }, [html] ] }

Capybara.register_driver :apparition do |app|
  Capybara::Apparition::Driver.new(app,
  )
end

sess = Capybara::Session.new(:apparition, app)
sess.visit("/")

__END__

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>Hello!</title>
    <script>
      console.log("hi");
    </script>
  </head>
  <body>
    <p>Hello world.</p>
  </body>
</html>