我第一次尝试使用带有量角器5.3.1的firefox 59.0。我不清楚设置,但我已经完成了。
npm install --save-dev selenium-server-standalone-jar
selenium-standalone install
但我必须从终端中的其他标签运行webdriver-manager start
吗?
我的测试将在Chrome中运行,但在Firefox中失败。我也尝试了directConnect true
和directConnect false.
WebDriverError: Unable to parse new session response: {"value":{"error":"session not created","message":"Failed to start browser /usr/local/bin/firefox-bin: permission denied","stacktrace":""}}
exports.config = {
seleniumAddress: 'localhost:4444',
allScriptsTimeout: 11000,
getPageTimeout: 11000,
specs: [
'./e2e/**/*.e2e-spec.ts' // will run all e2e tests in the project
],
multiCapabilities: [{
'browserName': 'chrome',
directConnect: true,
}, {
'browserName': 'firefox',
directConnect: true,
}],
marionette: true,
shardTestFiles: true,
maxInstances: 3,
答案 0 :(得分:0)
如果您使用webdriver-manager
,我建议您使用protractor
来管理selenium-server.jar和webdriver二进制文件。
首先,执行npm init
以初始化package.json
文件。
第二次,执行npm install -S protractor
安装并添加protractor
作为项目依赖项。
第三次,执行node_modules\.bin\webdriver-manager update
安装selenium-server-standalone.jar和chrome& firefox webdriver二进制文件到项目的node_modules
文件夹。
Forth ,如果您使用directConnect: true
,则无需执行node_modules\.bin\webdriver-manager start
即可在运行测试脚本之前在本地启动selenium服务器。
否则,如果设置seleniumAddress: 'http://localhost:4444/wd/hub'
,则需要在执行测试脚本之前执行此操作。只有一个运行的selenium服务器就足够了,每次运行测试脚本之前都不需要启动它。
注意,以上所有命令都需要在package.json
所在的项目文件夹下执行。