Latest Protractor v0.22.0 is out. Take a look at at the main features and bug fixes. Stay up to date!
(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().
(74761e8) feat(cli): use protractor.conf.js as a default config file if none is passed
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.
(6f31b56) chore(package): npm start now brings up the testapp
(1137d12) fix(mocha): fix it.only so that it does not double-wrap
(bde56a0) fix(cli): fix –exclude command line flag
Accidentally got changed to ‘excludes’. As discussed earlier, should be single to be consistent with Karma.
(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.
(b67810a) fix(webdriver-manager): do not download files if HTTP response is not 200
(28912f0) fix(webdriver-manager): fix download paths