Protractor - 0.19.0 is out

Latest Protractor version is out. 0.19.0. Major updates for the runner. Multiple drivers can be kicked off at once. See what has changed in this rapidly growing automation testing framework.

Testing against multiple browsers

If you would like to test against multiple browsers at once, use the multiCapabilities configuration option.


multiCapabilities: [{
  'browserName': 'firefox'
}, {
  'browserName': 'chrome'
}]

Protractor will run tests in parallel against each set of capabilities. Please note that if multiCapabilities is defined, the runner will ignore the capabilities configuration.

List of Changes

Note: Major version 0 releases are for initial development, and backwards incompatible changes may be introduced at any time.

Features

  • (77393d0), (6848180), (cca82ca) feat(runner/launcher): major runner updates to allow multiple capabilities

    Adding simultaneous runner capability (grid-style), refactoring launch/runner init system, and abstracting out configParser module.

  • (642de06) feat(protractor): add removeMockModule method

  • (88c339f) feat(runner): add adapter for cucumber.js

    Conflicts: lib/runner.js

Bug Fixes

  • (8924bbc) fix(cli): convert capabilities arguments to dot-notation for WebDriver compatibility

  • (a96d32f) fix(webdriver-manager): upcase in IE download url

    The url for the Win32 version of the IEDriverServer is apparently case sensitive: win32 vs Win32

Breaking Changes

  • (05eb42b) refactor(locators): moves scope in locators to last argument

    scope defaults to document, and is an optional argument so now be moved to the end. Came up from debugging and trying to use window.clientSideScripts.findInputs(‘username’); which failed. Refactored to match original intent.

    BREAKING CHANGE: anything relying on clientsidescripts should no longer pass element scope as first argument.

    Before:
    
    window.clientSideScripts.findInputs(document, 'username');
    
    After:
    
    window.clientSideScripts.findInputs(document, 'username');

    Also, any custom locators using addLocator will now break since the arguments order has chnaged. To migrate the code follow the example below:

    Before:
    
    var findMenuItem = function() {
      var domScope = arguments[0];
      var myArg = arguments[1];
      // balh blah blah
    };
    by.addLocator('menuItem', findMenuItem);
    
    After:
    
    var findMenuItem = function() {
      var myArg = arguments[0];
      var domScope = arguments[1];
      // balh blah blah
    };
    by.addLocator('menuItem', findMenuItem);

    Closes #497

comments powered by Disqus