如何在 Rails 日志文件中获取来自 Selenium(使用 Chrome)"console.log"?



在Rails项目中,我使用Cucumber和Capybara,以便通过Selenium在Chrome网络浏览器中运行我的测试。

我的测试运行良好,但我想在我的 Rails 应用程序的日志文件中获取console.logconsole.error等。

我已经注册了一个这样的:chrome水豚驱动程序(基于不同的文章和 SO 答案(:

Capybara.register_driver :chrome do |app|
  capabilities = Selenium::WebDriver::Remote::Capabilities.chrome(
    chromeOptions: {
      args: chrome_switches,
    },
    loggingPrefs: {
      browser: 'ALL',
      client: 'ALL',
      driver: 'ALL',
      server: 'ALL'
    }
  )
  Capybara::Selenium::Driver.new(
    app,
    browser: :remote,
    url: "http://selenium:#{ENV['SELENIUM_PORT']}/wd/hub",
    desired_capabilities: capabilities
  )
end

但是我在 Chrome 浏览器中的日志文件中没有任何内容。

如何在 Rails 日志文件中从 Selenium(使用 Chrome(获取"控制台.log"?

日志不会自动显示,您需要从Selenium请求它们,然后添加然后将它们写出到您喜欢的任何日志中。 要请求日志,您需要执行以下操作

page.driver.browser.manage.logs.get(:browser) # :driver, etc.

通常,您会在后续步骤中执行类似操作,然后将其写入您希望它所在的日志文件。

相关内容

  • 没有找到相关文章

最新更新