Changelog History
Page 4
-
v4.0.3 Changes
๐ Bug fixes
(5f690fe) fix(export): export selenium-webdriver (#3433)
- rename to ProtractorBrowser to be able to export selenium-webdriver Browser as Browser
- export all selenium-webdriver items and subfolders in ptor
- update dependency tests for selenium
- add tests when protractor is installed closes #209227
(27f7981) fix(config): fix interface for functions such as onPrepare (#3434)
closes #3431
-
v4.0.2 Changes
๐ Bug fixes
- (767d552) fix(types): typescript global reference and type declaration fixes (#3424)
-
v4.0.1 Changes
๐ Bug fixes
- (ee8ec91) fix(element): set variables to public in constructor (#3417)
closes #3414
- (7266902) fix(sauce): sauceAgent passed incorrectly to sauce node module (#3415)
closes #3410
- (828e80c) fix(browserstack): mark test suite as failed/passed on BrowserStack (#3409)
closes #3256
- (71532f0) fix(hybrid): add flag specifying that an app is an ng1/ng2 hybrid (#3403)
Needed for angular2 after rc2
(2a3a0dc) fix(exports): fix type exports and require('protractor') exports (#3404)
- fix(package): set main to ptor instead of browser
- fix(exports): fix type exports and require('protractor') exports
(b2eaa29) fix(types): output plugin typings (#3389)
- output plugin typings
- change ProtractorPlugin to an interface
- doc clean up closes #3365
(d2145b1) fix(launcher): output uncaught exception error (#3390)
- split out message and stack to hopefully provide more information to the error closes #3384
(d7cf42e) fix(protractor): export class definitions under the protractor namespace (#3393)
closes #3377
(2e83dcd) fix(types): add webdriver.promise and webdriver.WebElement to namespace (#3392)
- fix(types): add webdriver.promise and webdriver.WebElement to namespace closes #3391
- fix(protractor): export class definitions under the protractor namespace closes #3377
(dcbc832) fix(types): use protractor from global namespace (#3388)
(ee038f9) fix(error message): do not crash of thrown error has made
stack
readonly (#3372)
-
v4.0.0 Changes
This version includes some big changes, so we've decided to make it version 4.0!
๐ฆ webdriver-manager is now it's own NPM, so you can use it in your own projects. Protractor depends on it, though, so you shouldn't need to change โก๏ธ anything. However, because it is a new dependency you'll need to rerun
webdriver-manager update
.๐ Protractor has TypeScript typings! See the example โ for details on how to use TypeScript in your tests.
๐ฅ Breaking changes
(d932ad7) chore(browser): rename protractor to browser and add a protractor namespace (#3214)
- added wrapDriver method from the browser.ts and ExpectedConditions to the protractor namespace
- imported selenium webdriver ActionSequence, Key, promise, Command, and CommandName to the protractor namespace
โก๏ธ Selenium Webdriver has deprecated getInnerHtml and getOuterHtml. You'll need to update your tests to not use these methods.
Protractor node module no longer has a config.json file. This is now handled in the webdriver-manager node module and the files are also downloaded to the webdriver-manager/selenium folder.
๐ Bug fixes
(d6910c1) fix(edge): Use resetUrl about:blank for MicrosoftEdge (#3267)
(f205518) fix(launcher): resolve promise for getMultiCapabilities (#3195)
closes #3191
- (f149bd1) fix(docs): Change extension for docs links to .ts (#3187)
closes #3170
- (67474e0) chore(configParser): allow non-glob file pattern (#2754)
Cucumber allows line numbers to be passed in the filename in the form of
features/some.feature:42
. Glob expanding that results in an empty array and nothing being passed to the framework runner. This change checks for glob magic characters and only tries expanding it if found. Otherwise it just passes the filename verbatim. This was previously handled in [#2445] by stripping the line number first, but this is a more generic (non-cucumber) way to do it. Glob needed to be upgraded for this which resulted in a weird npm 3 bug. Removing the rimraf package resolved this. It was only used to generate documentation which itself was removed a while ago.- (f311320) fix(website): edit getText JSDoc for shortDescription (#3310)
closes #3233
- (ba63a92) fix(util): check stack exists before filtering the stack trace (#3309)
closes #3224
(c86acd4) chore(website): fix website for items to appear properly (#3314)
- Fix order for website (see #3163. Does not include $ / $$)
- Replace @return with @returns so descriptions will appear
(e9b49f2) fix(config): do not flatten capabilities (#3291)
This is no longer necessary in the latest version of selenium-webdriver. Without this change,
--capabilities.chromeOptions.binary
will do nothing, for example. Closes #3290๐ Features
(78f3c64) chore(exitCodes): adding exit code for browser connect errors (#3133)
- add exit code for browser connect errors
- add exit code for browserstack error
- add browser error for debug with multiple capabilities
- use thrown stack traces for errors (instead of creating new ones) with captureStackTrace
- allow for errors to suppress exit code for config parser thrown error
(85209f4) feat(webdriver): extract webdriver-manager into a separate node module (#3068)
closes #607, #2402
- Removed the config.json. This will be managed now by webdriver-manager.
Wedriver-manager downloads the file to the node_modules/webdriver-manager/selenium folder. This will no longer appear in the protractor directory.
- (8316917) feat(expectedConditions): adding urlIs and urlContains (#3237)
adding urlIs and urlContains
tests for UrlIs and UrlContains
โฌ๏ธ Dependency Upgrades
- (4353069) deps(outdated): Update outdated dependencies (#3251)
Updated the following outdated packages: body-parser, chai, chai-as-promised, glob, jshint, mocha, request, saucelabs, typescript, typings
- (a6cae73) deps(selenium): upgrade to selenium-webdriver 2.53.2 (#3223)
closes #3173, closes #3167, closes #3058
- (128f8e1) dep(webdrivermanager): upgrade to 10.1.0 (#3312)
Other
(2a391bc) chore(es7): async/await example
(bb65e5a) chore(website): clean up documentation (#3334)
- Remove getInnerHtml and getOuterHtml from inherited WebElement docs.
- Remove some of the goog.provide. Only one is required to build the website.
(f5dc4f9) chore(example): add a protractor typescript example (#3323)
-
v3.3.0 Changes
๐ The Protractor Website API docs have been streamlined. We've also, internally, moved to using TypeScript and building down to JS! Also, the logger has been improved.
๐ Bug Fixes
- (6f22d5a) fix(bootstrap): fix bootstrap for older versions of angular
Trying to use the debug label for window.name fails for versions of angular older than 1.2.24. See #3115
(bd78dfc) fix(protractor): isPresent() should work with out of bounds errors (#3108)
(88dd568) fix(NoSuchElementError): add 'new' keyword to instantiate class
The class NoSuchElementError is called without the new keyword in the
ElementArrayFinder.prototype.count
causing aClass constructors cannot be invoked without 'new'
closes #3079
๐ Features
(afdd9d7) feat(logger): improve logging methods (#3131)
(5fa94db) feat(exitCodes): adding exit codes for configuration file errors (#3128)
(76861fd) feat(element): equals
Easier to use version of webdriver.WebElement.equals
- (582411b) feat(driverProvider/sauce) Add build id as a configurable option
โฌ๏ธ Dependency Upgrades
(b4d1664) deps(jasminewd2): bump jasminewd2 to 0.0.9
(b6f1a63) feat(protractor): Shows locator used when a timeout occurs
(de4b33e) feat(webdriver): Added NO_PROXY environment variable support to webdriver-manager
closes #3046
-
v3.2.2 Changes
๐ This release is a hotfix for webdriver-manager iedriver
๐ Bug Fix
(c6a3b5e) fix(webdriver) - fix file type for internet explorer driver file
(d3bd170) fix(bootstrap): enable debug info before setting defer label
Note that in most cases, this should not have surfaced as an issue because the base test mock modules will also try to turn on debug info.
Closes #3009
-
v3.2.1 Changes
๐ This release is a hotfix for modules that require protractor
๐ Bug Fix
- (6e02934) fix(package): Update module main in package.json to use built.
-
v3.2.0 Changes
๐ Features
- (cae175c) feat(plugins) Calculate skipAngularStability dynamically.
This allows plugins to turn Protractor's default synchronization on and off as needed.
(7372267) feat(webdriver): add support for custom versions for selenium, chrome driver, and ie driver
(1cbbe4f) feat(config): no globals option
(9608201) feat(typescript): adding typescript to protractor
Converting a 3 files over to typescript.
Adding an
npm prepublish
step that will use gulp to download the typings, transpile the files with tscto the built/ directory and copy the rest of the javascript files from lib/ to the built/ folder.Also adding scripts to package.json for
npm run tsc
andnpm run tsc:w
for transpiling help.- (a4a7209) feat(plugins): skipAngularStability
โฌ๏ธ Dependency Upgrades
- (29627f4) chore(selenium) - upgrade to selenium webdriver v 2.52.0
See the full changelog at https://github.com/SeleniumHQ/selenium/blob/master/javascript/node/selenium-webdriver/CHANGES.md#v2520
๐ Bug Fixes
- (a2c7a4b) fix(config): Do not sort spec keys
Fixes #2928
-
v3.1.0 Changes
โฌ๏ธ Dependency Version Upgrades
- (f699718) updates(selenium): update chromedriver and selenium-standalone
Selenium-standalone update to 2.51.0. Update chromedriver to 2.21.
Chromedriver changelog: http://chromedriver.storage.googleapis.com/2.21/notes.txt Selenium changelog: https://github.com/SeleniumHQ/selenium/blob/master/dotnet/CHANGELOG
- (5930d14) chore(deps): update various npm dependencies to latest stable releases
๐ Features
- (3f3805f) feat(attachSession): attach protractor to existing webdriver session
Attaching an existing selenium browser session to protractor rather than always creating new one. The session can be passed into the config file as a string via the sessionId.
- (b693256) feat(webdriver): allow configuration of all SeleniumServer arguments
You can now pass a complete object of configuration for the SeleniumServer class. This allows enabling loopback on the selenium server.
- (148f020) feat(protractor): Add support to allow Protractor to test an Angular application which has debugging info disabled
Currently Angular application which for performance reasons, have debug information turn off cannot be tested. This PR allows users to add the Angular debug logging flag to the Protractor run.
(aa5ceb5) feat(webdriver): add support for selenium webdriver proxy
(b110ed9) feat(debugger): allow multiple browser.pause()
After this change, you can put multiple browser.pause() in the code. Each browser.pause() is like a traditional breakpoint.
To detach from the debugger, press D (CTRL+D). This will continue code execution until it hits the next browser.pause() or code finishes running.
This PR also fixes a number of small formatting issues.
- (fb10c5c) feat(webdriver): Allow users to use webdriver's disableEnvironmentOverrides
Fixes #2300
- (fa0c692) feat(config): allow onComplete to return a promise
Closes #1944
๐ Bug Fixes
- (f533341) bug(driverProvider): fix driver path generation for *nix platforms
Makes error messages better