Protractor v7.0.0 Release Notes
Release Date: 2020-05-13 // almost 5 years ago-
- (9d2e18e) refactor: use console.log instead of util.puts
utils.puts is no longer available in Node.JS 12
- (c281157) refactor: remove debugger and explore methods
BREAKING CHANGE: Debugger and explore methods are not compatable with Node 8+. Use
debugger
keyword instead. See: https://goo.gl/MvWqFh(7cdb978) build: update several dev packages that have security issues
(8e82835) build: update webdriver-manager
(a1fe5f2) ci: update tests to run on Node 10 and 12
(3fc9220) fix: prototype Pollution vulnerability through outdated yargs package
BREAKING CHANGE:
Node.Js version 6 and 8 are no longer supported. Please update to Node.Js 10+
Closes #5431
Previous changes from v6.0.0
-
๐ Selenium 4 removes the control flow and most of these changes are based on those changes. To see the full list of changes, please refer to selenium-webdriver's CHANGELOG
๐ฅ Breaking changes
- ๐ Control flow is removed and you should use async await to run your tests.
- Other control flow related items:
- debugger, explore and element explorer have been removed
- jasminewd is no longer a dependency
- ๐ ignoreSynchronization has been deprecated and you should use
waitForAngularEnabled
- Types for selenium-webdriver are currently in the types/ directory and are not complete. We are still missing some type definitions for selenium 4.
- โ Actions API in selenium-webdriver have changed and they will break your test. Also we have not exported it yet since the type definitions are not complete.
๐ Features
(cf43651) chore(debugprint): convert debugprint to TypeScript (#5074)
(4672265) chore(browser): remove timing issues with restart and fork (#5085)
- remove .ready since forking should automatically return a browser
- getNewDriver should return a promised WebDriver that can be awaited
- fix interaction tests and local driver tests
- update unit tests for async await due to getNewDriver fix closes #5031
(b4dbcc2) chore(elementexplorer): remove explorer bin file (#5094)
closes #5092
(3b8f263) chore(ignoreSynchornization): clean up to use waitForAngularEnabled (#5071)
(ffa3519) chore(debugger): remove debugger and explore methods (#5070)
(c9db3f3) chore(promises): remove q promises and webdriver promises (#5052)
- remove q promises and webdriver promises from the runner, launcher, plugins, and taskRunner
- add deprecated message to element explorer.
- add unhandledRejection
- update browser versions used in travis tests
(e22065c) chore(promises): clean up driver providers and browser control flow (#5034)
Driver providers and tests:
- Use native promises over q promises in driver providers
Remove driverProviderUseExistingWebDriver since the generation of the selenium server is already accomplished when providing a selenium address in driverProvider.ts. Also clean up docs and tests.
Enabled the driverProviderLocal tests
Clean up JSDocs for q.promise Basic lib spec:
Remove auto unwrap test for a WebElement. Reference PR #3471 Browser:
Remove control flow from waitForAngularEnabled, waitForAngular, and angularAppRoot in the Browser class.
Dependencies
(96ae17c) deps(jasmine): upgrade jasmine 3.3 (#5102)
(d213aa9) deps(selenium): upgrade to selenium 4 (#5095)
- elements workaround for WebElement.equals
- added a better unhandled rejection warning message in the launcher control flow)bal function wrappers for mocha (these wrappers went away with
- fix the attach to session driver provider Typing exported from Protractor:
- removed ActionSequence and EventEmitter (actions is currently missing)
- removed promise.Promise fulfilled, filter, whener, delayed, createFlow, controlFlow, all, Typings exported from WebDriver:
- removed attachToSession
- removed WebDriver instance methods: touchActions, call
- removed WebElement getSize and getLocation for getRect
- removed redefined global vars for testing
- In the typings, we are missing Options.setScriptTimeout method. This should not impact users unless they are using the driver.manage() method. Tests:
- fix element equals test
- add missing 'await' in colorList test that is causing unhandled promise rejections.
- remove control flow related tests
- disable the install test. Installing from "file:../../" is not working.
- fix the attach to session driver provider test to exit with a 1 if errors are encountered
(509f1b2) deps(latest): upgrade to the gulp and typescript (#5089)
- deps(latest): upgrade to the gulp and typescript
- add in @types/loglevel and @types/yargs for webdriver-manager
- upgrade tslint clean up for tslint supported by gulpp 4 and remove run sequence since this feature is
- remove compile to es5
(2def202) deps(webdriver-manager): use replacement (#5088)
publish a beta release of use webdriver-manager-replacement until we webdriver-manager closes #5087
Miscellaneous
๐ Minor fixes to remove the control flow completely and to prevent random execution order in Jasmine 3.