簡體   English   中英

如何在 Rails 日志文件中從 Selenium(使用 Chrome)獲取“console.log”?

[英]How to get "console.log" from Selenium (with Chrome) in the Rails log files?

在 Rails 項目中,我使用 Cucumber 和 Capybara,以便通過 Selenium 在 Chrome 網絡瀏覽器中運行我的測試。

我的測試運行良好,但我想在 Rails 應用程序的日志文件中獲取console.logconsole.error等。

我已經注冊了這樣的:chrome capybara 驅動程序(基於不同的文章和 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)獲取“console.log”?

日志不會自動顯示,您需要從 Selenium 請求它們,然后添加然后將它們寫到您喜歡的任何日志中。 要請求日志,您需要執行以下操作

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

通常,您會在之后的步驟中執行類似操作,然后將其寫入您希望它所在的日志文件中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM