我已经确定了如何使用以下方法运行一个chrome扩展程序:
{
"src_folders" : ["test"],
"webdriver" : {
"start_process": true,
"server_path": "node_modules/.bin/chromedriver",
"cli_args": ["--verbose"],
"port": 9515
},
"test_settings" : {
"default" : {
"desiredCapabilities": {
"browserName": "chrome",
"chromeOptions" : {
"args": [
"--load-extension=/pathToFirstExtension",
]
}
}
}
}
}
但是,运行两个扩展程序不起作用。 我尝试了以下操作:
"args": [
"--load-extension=/pathToFirstExtension, /pathToSecondExtension",
]
还有这个:
"args": [
"--load-extension=/pathToFirstExtension",
"--load-extension=/pathToSecondExtension",
]
还有这个:
"args": [
"--load-extension=/pathToFirstExtension /pathToSecondExtension",
]
还有在这样的列表中以逗号分隔的base64编码的字符串:
chromeOptions: {
extensions: [
keywords.base64,
avgPrice.base64
]
}
我正在单个js文件中使用module.exports,其中base64编码的字符串位于键为base64的对象中
如何为夜视测试加载多个Chrome扩展程序?
答案 0 :(得分:0)
cuplrit是逗号分隔的字符串之间的空格!
万一有人觉得有用-现在对我有用:
const chromedriver = require('chromedriver');
module.exports = {
src_folders : ["test"],
test_settings: {
default: {
webdriver: {
start_process: true,
server_path: chromedriver.path,
port: 4444,
cli_args: ['--port=4444']
},
desiredCapabilities: {
browserName: 'chrome',
javascriptEnabled: true,
acceptSslCerts: true,
chromeOptions: {
args: [
"--load-extension=/pathToExtensionOne,/pathToExtensionTwo",
"window-position=2560,0",
"window-size=400,300"
]
}
}
},
chrome: {
webdriver: {
server_path: chromedriver.path
},
desiredCapabilities: {
browserName: 'chrome',
javascriptEnabled: true,
acceptSslCerts: true,
chromeOptions: {
args: []
}
}
}
}
};
我还可以设置窗口大小/位置。
FWIW,我使用的是nightwatch.conf.js而不是nightwatch.json
在我的package.json 中:
"scripts": {
"nightwatch": "nightwatch -c ./nightwatch.conf.js"
}
要运行此命令,请在终端上执行以下操作:
npm run nightwatch