Protractor v0.22.0 Release Notes

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

    ๐Ÿ”‹ Features

    • (8b088fd) feat(locators): Added a By.cssContainingText locator.

    This new locator find elements by css selector and inner text in response to the lack of ':contains' selector.

    Example: By.cssContainingText('ul .pet', 'Dog') will find all ul children with class 'pet' containing the text 'Dog'.

    Closes #488, Closes #709

    • (54060b7) feat(protractor): add the browser.setLocation method to perform in-page navigation

    Allow a faster way to navigate within the app. The current browser.get method forces the entire app to load every time you navigate to a new page. The proposed browser.setLocation method uses the same format as $location.url().

    Closes #368

    • (74761e8) feat(cli): use protractor.conf.js as a default config file if none is passed

    Closes #615

    โšก๏ธ Chores and updates

    • (b81cf5a) chore(webdriver): update WebDriverJS version to 2.41.0

    • (a96df4d) chore(minijasminenode): update to version 0.4.0.

    This allows the use of because('message') before expectations, to give additional information when a failure occurs.

    It also removes warnings for Node 0.11.* users about util.print being deprecated.

    Closes #377

    • (6f31b56) chore(package): npm start now brings up the testapp

    Closes #712

    ๐Ÿ› Bug Fixes

    • (1137d12) fix(mocha): fix it.only so that it does not double-wrap

    Closes #469

    • (bde56a0) fix(cli): fix --exclude command line flag

    Accidentally got changed to 'excludes'. As discussed earlier, should be single to be consistent with Karma.

    Closes #637

    • (9e426df) fix(locators): using $().$$() should return an ElementArrayFinder

    Prior, $(foo).$$(bar) would return a promise which resolved to an array of WebElements. This is unexpected, since $(foo).$(bar) returns an ElementFinder, and element(by.css(foo)).element.all(by.css(bar)) returns an ElementArrayFinder. Fixed so things are more consistent.

    Closes #640

    • (b67810a) fix(webdriver-manager): do not download files if HTTP response is not 200

    Closes #656

    • (28912f0) fix(webdriver-manager): fix download paths