Selenium Grid - Chrome 性能日志在网格节点中不可用
Selenium Grid - Chrome performance logs not available in grid nodes
我正在使用硒网格。每当我从节点(局域网中的 Web 驱动程序)请求性能日志时,都会发生错误。 WebDriverError: invalid argument: log type 'performance' not found
.
适用于本地网络驱动程序。唯一的区别是 .usingServer('http://192.168.1.113:5566/wd/hub')
const { Builder, logging, Capabilities } = require('selenium-webdriver');
const chrome = require('selenium-webdriver/chrome');
const prefs = new logging.Preferences();
prefs.setLevel(logging.Type.PERFORMANCE, logging.Level.ALL);
opts = new chrome.Options();
opts.setLoggingPrefs(prefs);
var isLAN = true;
if (isLAN) {
const driver = await new Builder()
.withCapabilities(opts.toCapabilities())
.usingServer('http://192.168.1.113:5566/wd/hub')
.build();
} else {
const driver = await new Builder()
.withCapabilities(opts.toCapabilities())
.forBrowser('chrome')
.build();
}
driver.get('http://whosebug.com/');
driver.manage().logs().get('performance').then(function(entries) {
console.log(entries);
});
driver.quit();
添加以下代码解决了这个问题。
var caps = Capabilities.chrome();
caps.set('goog:loggingPrefs', {'performance':'ALL'})
最终代码
const { Builder, Capabilities } = require('selenium-webdriver');
var caps = Capabilities.chrome();
caps.set('goog:loggingPrefs', {'performance':'ALL'})
var isLAN = true;
if (isLAN) {
const driver = new Builder()
.usingServer('http://192.168.1.104:5566/wd/hub')
.withCapabilities(caps)
.build();
driver.get('http://whosebug.com/');
driver.manage().logs().get('performance').then(function (entries) {
console.log(entries);
});
driver.quit();
} else {
const driver = new Builder()
.forBrowser('chrome')
.withCapabilities(caps)
.build();
driver.get('http://whosebug.com/');
driver.manage().logs().get('performance').then(function (entries) {
console.log(entries);
});
driver.quit();
}
我正在使用硒网格。每当我从节点(局域网中的 Web 驱动程序)请求性能日志时,都会发生错误。 WebDriverError: invalid argument: log type 'performance' not found
.
适用于本地网络驱动程序。唯一的区别是 .usingServer('http://192.168.1.113:5566/wd/hub')
const { Builder, logging, Capabilities } = require('selenium-webdriver');
const chrome = require('selenium-webdriver/chrome');
const prefs = new logging.Preferences();
prefs.setLevel(logging.Type.PERFORMANCE, logging.Level.ALL);
opts = new chrome.Options();
opts.setLoggingPrefs(prefs);
var isLAN = true;
if (isLAN) {
const driver = await new Builder()
.withCapabilities(opts.toCapabilities())
.usingServer('http://192.168.1.113:5566/wd/hub')
.build();
} else {
const driver = await new Builder()
.withCapabilities(opts.toCapabilities())
.forBrowser('chrome')
.build();
}
driver.get('http://whosebug.com/');
driver.manage().logs().get('performance').then(function(entries) {
console.log(entries);
});
driver.quit();
添加以下代码解决了这个问题。
var caps = Capabilities.chrome();
caps.set('goog:loggingPrefs', {'performance':'ALL'})
最终代码
const { Builder, Capabilities } = require('selenium-webdriver');
var caps = Capabilities.chrome();
caps.set('goog:loggingPrefs', {'performance':'ALL'})
var isLAN = true;
if (isLAN) {
const driver = new Builder()
.usingServer('http://192.168.1.104:5566/wd/hub')
.withCapabilities(caps)
.build();
driver.get('http://whosebug.com/');
driver.manage().logs().get('performance').then(function (entries) {
console.log(entries);
});
driver.quit();
} else {
const driver = new Builder()
.forBrowser('chrome')
.withCapabilities(caps)
.build();
driver.get('http://whosebug.com/');
driver.manage().logs().get('performance').then(function (entries) {
console.log(entries);
});
driver.quit();
}