[Protractor] Running tests on multiple browsers

Testing your AngularJS application on multiple browsers is important, and Protractor offers this ability through the multiCapabilities configuration option. Learn how to use this option, as well as configure your e2e tests to run on only a single browser for rapid development.web

 

By default, protractor will use chrome as default browser. You can also use other browser:chrome

exports.config = {

    capabilities: {
        name: "Firefox",
        browserName: "firefox"
    },
    specs: [
        './e2etest/**/*.spec.js'
    ],
    seleniumAddress: 'http://localhost:4444/wd/hub'
};

 

If you want to run on multi browsers, then you can use 'multiCapabilities':json

exports.config = {
    multiCapabilities: [
        {
            name: "Chrome",
            browserName: "chrome"
        },
        {
            name: "Firefox",
            browserName: "firefox"
        }
    ],
    specs: [
        './e2etest/**/*.spec.js'
    ],
    seleniumAddress: 'http://localhost:4444/wd/hub'
};

 

But it probably good when you are actually developing the project, you can run only on one browser for saving time, so you can modify the scripts tags:api

    "test-e2e": "protractor conf.js",
    "test-e2e-dev": "protractor conf.js --chrome"

 

More flexable code:app

var browsers = {
  firefox: {
    name: 'Firefox',
    browserName: 'firefox'
  },
  chrome: {
    name: 'Chrome',
    browserName: 'chrome'
  }
}

var config = {
  specs: [
    './e2etest/**/*.spec.js'
  ],

  baseUrl: 'http://localhost:3333'
};

if (process.argv[3] === '--chrome') {
  config.capabilities = browsers.chrome;
}  else {
  config.multiCapabilities = [
    browsers.firefox,
    browsers.chrome
  ]
}

exports.config = config;

 

 

package.json:flex

  "scripts": {
    "test-start": "webdriver-manager start",
    "test-e2e": "protractor conf.js",
    "test-e2e-dev": "protractor conf.js --chrome"
  },
相關文章
相關標籤/搜索