- added new methods released on appium 1.7.0 for android emulators
- added followAllRedirects option to all http requests
- added touch_id method
- case insensitive setOrientation
- use Array.isArray() internally
note: 1.1.0 was skipped
- upgraded all dependencies
- code fixes for new dependencies
- NodeJS v6 targeted version, tested against v5 in CI
- touch action
- geolocation fix
- package update
- lodash upgrade
- doc fixes
- http retry on EPIPE
- package upgrade
- wd-no-defaults cap
- package upgrade
- added unlockDevice method
- chainable tap
- added getSettings and updateSettings methods
- added startActivity method
- mjson element.setText method
- error fix
- http timeout fix
- new IME mjson methods.
- hideKeyboard method update.
- new pullFolder method.
- Appium detection fix.
- TouchAction/MultiAction update now works like the W3 specs. See the following sample:
TouchAction a1 = (new wd.TouchAction(driver)).press({el: el}).release();
a1.perform();
TouchAction a2 = (new wd.TouchAction()).press({el: el}).release();
TouchAction a3 = (new wd.TouchAction()).tap({el: el, x50, y: 50}).wait({ms: 10000});
MultiAction ma = (new wd.MultiAction(driver)).add(a2, a2);
ma.perform();
- http proxy fix.
- openNotifications + getAppStrings fix.
- getNetworkConnection fix.
- add custom methods to element prototypes.
- appium/selendroid network connection methods.
- packages upgrade
- http proxy options
- configurable default chaining scope
- better sauce job update logic
- configurable sauce rest root
- packages upgrade
- bugfixes: getAppString + element unique arguments
- extra Appium method
- bugfix: TouchAction.moveTo
- stricter jshint
- more mjson/appium methods
- command argument bugfix
- extra mobile/appium method
- command arguments bugfix
- no defaults for appium
- better mobile examples
- waitForElement fix
- added waitForElements method
- auth fix
- new context methods
- minor bugfix
- better logging
- better error handling
- packages upgrade to latest.
- http emit fix.
- added print method
- added at, nth, first, second, third, last to promise api
- added nodeify to transferPromiseness.
attach
/detach
session.- add
asyncRemote
and makeremote
generic.
- bugfix: Removed the tmp dependencies.
- isDisplayed/isNotDisplayed asserters
- isVisible depreciation
- bugfix: Removed the tmp dependencies.
- bugfix: Value not defaulted when inititializing with
url.parse
. - bugfix: url relative now use
url.resolve
.
- Webdriver and Element refactoring
- Easier wd customization via
wd.setBaseClasses(Webdriver, Element)
- bugfix: android safeExecute.
- bugfix: passing argument to execute.
- bugfix: setOrientation.
- migrating from string.js to underscore.string.
- Http configuration enhancements + base url, see doc here.
waitFor
,waitForElement
and asserters replacing existing wait methods.addPromiseChainMethod
/addPromiseMethod
/addAsyncMethod
/removeMethod
replacing monkey patching (Please refer to the add method section in README).- Support for external promise libraries.
- New saveScreenshot method.
- chai-as-promised v4 compatible.
- Promise wrappers can now be monkey patched directly.
- New saucelabs helpers.
Incompatibilities:
- There is a new method to call,
wd.rewrap()
, to propagate async monkey patching to promise. (see here and the monkey patch section in README) [Note: monkey patching andrewrap
note recommended from 0.2.3]. - The chai-as-promised setup has changed in v4, look out for the
transferPromiseness
(Requires chai-as-promised 4.1.0 or greater) line in the examples. (see here).
- New test suite using the promise chain api.
browser.Q
was moved towd.Q
.
- New wrapper: promise chain.
- Old chain api is deprecated (It is still available, but you will see a depreciation message).
- There are some changes in the way the element and webdriver classes are passed around which may affect external wrappers. External wrappers should now subclass those 2 classes.
- write tests for sauceJobUpdate/sauceJobStatus
- Modify doc generator to cope with commands.js
- Integrate with node-saucelabs + make the sauce rest url configurable
- Add wait for elements
- Implement all the missing methods
- Appium mobile methods
- add a util with most commonly used desired config (selenium+appium)
- jQuery addOn + asserters (including jquery visible/hidden) (todo)
- better remote/init process