这个问题之前已经在Java中回答过(获取chrome的控制台日志)
但是,我正在使用 Ruby 绑定,想知道它是否提供了类似的功能?
我已经查看了Ruby源代码,但看不到任何对LoggingPreferences的提及或引用。
顺便说一下,我正在使用RemoteWebDriver并传入所需的功能对象。 大概我想在该对象中设置日志记录首选项,但我正在努力查看位置。
对延迟回复表示歉意。
我最初是通过向 Webdriver 添加以下内容来实现的;
module Selenium
module WebDriver
class Options
#
# Returns the available logs for this webDriver instance
#
def available_log_types
@bridge.getAvailableLogTypes
end
#
# Returns the requested log
#
# @param type [String] The required log type
#
# @return [Array] An array of log entries
#
def get_log(type)
@bridge.getLog(type)
end
end
end
end
当"需要"时,这会导致以下支持;
driver.manage.get_log(:browser)
但是,硒红宝石的 2.38 版公开了日志记录 API(尽管是实验性的)。
http://selenium.googlecode.com/git/rb/CHANGES
https://code.google.com/p/selenium/wiki/Logging
因此,从 2.38 开始,以下内容应该在没有上述扩展的情况下工作;
driver.manage.logs.get :browser
您也可以使用此代码
需要"硒网络驱动程序"
console_logs = @browser.driver.manage.logs.get(:browser)看跌期权 = console_logs
ReportBuilder.build_report
使用命令 -f json -o my_report_file.json 生成报告。