1
有沒有辦法查看selenium webdriverjs測試可能生成的瀏覽器日誌消息(例如console.log)?如何在運行硒webdriverjs測試時看到瀏覽器日誌消息
有沒有辦法查看selenium webdriverjs測試可能生成的瀏覽器日誌消息(例如console.log)?如何在運行硒webdriverjs測試時看到瀏覽器日誌消息
我瞭解它的方式,你想看到被測系統產生的信息?試試這個:
var logBrowserMessages = function(logEntries, driver, logging, cb) {
return driver.manage().logs().get(logging.Type.BROWSER).then(function(entries) {
entries.forEach(function(entry) {
logEntries = logEntries + entry.level.name + ': ' + entry.message + '\n';
});
logEntries = logEntries + "\n";
console.log('final entries:' + logEntries);
return cb();
});
};
您還需要要求:
var logging = require('selenium-webdriver').logging;
,併成立了駕駛員與記錄preferances:
var prefs = new logging.Preferences();
prefs.setLevel(logging.Type.BROWSER, logging.Level.ALL);
driver = new webdriver.Builder()
.withCapabilities(webdriver.Capabilities.chrome())
.setLoggingPrefs(prefs)
.build();
然後你可以使用logBrowserMessages:
var doStuff = function(driver, logging) {
return logBrowserMessages('', driver, logging, function() {
//Do stuff
});
});
};
一些額外的信息。根據webdriver標準,如果您將讀取兩次日誌,則第二次讀取操作將僅返回第一次日誌讀取操作後創建的日誌(如果有)。一些網絡驅動程序遵循此規則(例如chromedriver),有些則不遵守(例如phantomjs)。 – Dzenly