此问题之前已在Java(Get chrome's console log)
中得到解答但是,我正在使用Ruby绑定,并想知道是否提供了类似的功能?
我查看了Ruby源代码,但看不到任何提及或引用LoggingPreferences。
顺便说一句,我正在使用RemoteWebDriver并传入所需的功能对象。据推测,我想在该对象中设置日志记录首选项,但我很难看到在哪里。
答案 0 :(得分:7)
对迟到的回应道歉。
我最初通过向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.30版的硒红宝石宝石暴露了伐木API(虽然是实验性的)。
http://selenium.googlecode.com/git/rb/CHANGES
https://code.google.com/p/selenium/wiki/Logging
因此,从2.38起,以下内容应在没有上述扩展名的情况下运作;
driver.manage.logs.get :browser
答案 1 :(得分:0)
您也可以使用此代码
需要'selenium-webdriver'
console_logs = @ browser.driver.manage.logs.get(:browser) puts = console_logs
ReportBuilder.build_report
使用命令 -f json -o my_report_file.json 生成报告。