不能让firefox与量角器和selenium独立工作

时间:2018-04-17 15:28:52

标签: selenium selenium-webdriver protractor

我第一次尝试使用带有量角器5.3.1的firefox 59.0。我不清楚设置,但我已经完成了。

npm install --save-dev selenium-server-standalone-jar
selenium-standalone install

但我必须从终端中的其他标签运行webdriver-manager start吗?

我的测试将在Chrome中运行,但在Firefox中失败。我也尝试了directConnect truedirectConnect 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,

1 个答案:

答案 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所在的项目文件夹下执行。