changelogs.md


oxygenhq/oxygen

Repository  -  API  -  Source

0.47.3

August 5, 2019
  • Internal fixes: Fix HAR fetching on ChromeDriver >= v75

0.47.2

July 28, 2019
  • Internal fixes.

0.47.1

July 28, 2019
  • Internal fixes.

0.47.0

July 26, 2019
  • Add web.dragAndDrop.
  • Internal changes - fix breakpoint processing and make oxygen work with VS Code debugger.
  • Bump dependencies.

0.46.6

July 19, 2019
  • Improve performance of HTML report generation.
  • Bump dependencies.

0.46.5

July 17, 2019
  • Add support for adding breakpoints after the test has started.
  • Bump dependencies.

0.46.4

July 14, 2019
  • Fix invalid breakpoint handling in debugger.

0.46.3

July 10, 2019
  • Fix number of issues with HTML reports.

0.46.2

July 9, 2019
  • Support external webdriverio options.
  • Improve error handling for RuntimeError.

0.46.1

July 3, 2019
  • Fix soap module to work with HTTPS which uses self-signed certificates.
  • Fix http module to work with HTTPS which uses self-signed certificates.
  • Fix pdf.assert not working properly with certain words having spaces in them.

0.46.0

July 2, 2019
  • Add mob.getAppiumLogs.
  • Add mob.getDeviceLogs.
  • Add mob.getDeviceTime.
  • Add mob.setTimeout.
  • Add web.getBrowserLogs.
  • Add pdf module.
  • Remove dependency on Mono for Linux & OS X.

0.45.2

June 17, 2019
  • Internal fixes.

0.45.1

June 11, 2019
  • Move web.sendKeyboardActions functionality to web.sendKeys.

0.45.0

June 11, 2019
  • Add web.sendKeyboardActions (on behalf of Alexei Mikheev).
  • Fix mob.swipe to throw proper error when element not found.
  • Fix commands failing with cryptic error when passed null as a locator.
  • Bump dependencies.

0.44.1

June 10, 2019
  • Fix CSV parameters parsing.
  • Fix UNKOWN_ERROR being thrown for assertion errors.

0.44.0

May 29, 2019
  • Remove support for using ECMAScript modules from require.

0.43.0

May 27, 2019
  • Add web.getTitle.
  • Unwrap the return value returned by web.execute and mob.execute.
  • Internal fixes.

0.42.8

May 5, 2019
  • Remove browserName if both browserName and appPackage were specified.
  • Override script specified caps for mob tests with context caps.

0.42.7

April 29, 2019
  • Fix --ro command line switch.

0.42.6

April 24, 2019
  • Better error message on invalid IE zoom level.
  • Internal fixes.

0.42.4

April 16, 2019
  • Fix date values not being parsed correctly when reading a CSV.
  • Bump dependencies

0.42.3

April 2, 2019
  • Fix encoding issue when reading CSVs without BOM.
  • Bump dependencies

0.42.2

March 13, 2019
  • Fix web.scrollToElement.

0.42.1

March 12, 2019
  • Internal fixes.

0.42.0

February 25, 2019
  • Add shell module.

0.41.2

February 1, 2019
  • Fix possible crash in web.click.

0.41.1

January 30, 2019
  • Internal fixes.

0.41.0

January 29, 2019
  • Add web.assertTextNotPresent.
  • Add timeout to web.assertTextPresent.
  • Fix mob.swipe when used without locator.
  • Generate proper oxygen error on element not found in mob.waitForExist.
  • Fix documentation.
  • Use dependencies only from npm repo.

0.40.0

January 15, 2019
  • Add web.refresh.
  • Handle element not displayed errors from IE driver.
  • Produce proper error when browserName is not specified for web.init.
  • Fix documentation.
  • Other internal fixes.

0.39.0

December 28, 2018
  • [Breaking change] mob.selectFrame behavior changed to match web.selectFrame.
  • Fix documentation.
  • Other internal fixes.

0.38.0

December 23, 2018
  • Allow to access Oxygen modules and context from external modules.
  • Add ES6 support to the test script imported modules.
  • Fix commented out parameters being reported as undefined.
  • Other internal fixes.

0.37.0

December 20, 2018
  • Ignore delay for transaction commands.
  • Fix date.fromNow documentation.
  • Add authentication support for soap.

0.36.1

December 17, 2018
  • Fix error's line number not saved in step result.

0.36.0

December 11, 2018
  • Add web.back.
  • Fix mob.isVisible.
  • Better handling of error caused by lack of Mono installation on MacOS, when generating HTML report.

0.35.5

December 1, 2018
  • Fix invalid transaction name in reports in certain situations when executing multiple iterations.

0.35.4

November 28, 2018
  • User friendly error messages on invalid parameter files.

0.35.3

November 28, 2018
  • Don't try to trim non-string parameter values.
  • Use js injection click fallback for non-intractable elements.

0.35.2

November 27, 2018
  • Remove extra whitespace characters from parameters loaded from xlsx.

0.35.1

November 26, 2018
  • Better error message when Android device is not found.
  • Fix crash under rare circumstances.

0.35.0

November 23, 2018
  • [Breaking change] Rename mob.isDisplayed to mob.isVisible.
  • Fix mob.is* behavior when element not found.
  • Better error messages for Selenium and Appium init failures.
  • Better error messages on text mismatch for web.waitForText and web.waitForValue.
  • Fix test time being reported in utc instead of local time in reports.
  • Documentation updates.

0.34.4

November 19, 2018
  • Fix debugger.

0.34.2

November 12, 2018
  • Bump dependencies (adds support Node 9 and 10)

0.34.1

November 6, 2018
  • Fix invalid error being reported under certain conditions.

0.34.0

November 6, 2018
  • Add db.executeQuery.
  • Fix crash on Linux/OSX if odbc binaries are not installed.
  • Fix incorrect error type returned in certain situations.
  • Fix error line number not shown for certain errors.
  • Bump webdriverio.

0.33.0

October 24, 2018
  • [Breaking change] Rename web.waitForElementPresent to web.waitForExist.
  • [Breaking change] Rename web.isElementPresent to web.isExist.
  • [Breaking change] Rename web.isElementVisible to web.isVisible.
  • [Breaking change] Rename web.assertElementPresent to web.assertExist.
  • [Breaking change] Rename web.executeScript to web.execute.
  • [Breaking change] Rename web.getPageSource to web.getSource.
  • [Breaking change] Rename mob.waitForElement to mob.waitForExist.
  • [Breaking change] Rename mob.setValue to mob.type.
  • [Breaking change] Remove empty string locator from web.selectWindow.
  • [Breaking change] Change web.selectFrame behavior:
    • Multiple locators can be passed as arguments now instead of separating the frame XPathes with ';;'
    • "relative=parent" changed to "parent"
    • "relative=top" changed to "top"
    • "index=x" changed to x (passed as a number)
  • [Breaking change] Add mob.setAutoWait.
  • Add web.setAutoWait.
  • Add X offset support in web.scrollToElement.
  • Improved error handling for situations when invalid arguments are passed to methods.
  • Fix documentation.
  • Error code names changes:
    • ASSERT -> ASSERT_ERROR
    • VERIFY -> VERIFY_ERROR
    • NO_SUCH_ELEMENT -> ELEMENT_NOT_FOUND
    • NO_SUCH_FRAME -> FRAME_NOT_FOUND
    • UNKNOWN_COMMAND -> UNKNOWN_COMMAND_ERROR
    • NO_SUCH_WINDOW -> WINDOW_NOT_FOUND
    • APPIUM_SERVER_UNREACHABLE -> APPIUM_UNREACHABLE_ERROR
    • SELENIUM_SERVER_UNREACHABLE SELENIUM_UNREACHABLE_ERROR
    • NOT_IMPLEMENTED -> NOT_IMPLEMENTED_ERROR
    • DB_CONNECTION -> DB_CONNECTION_ERROR
    • DB_QUERY -> DB_QUERY_ERROR
    • SOAP -> SOAP_ERROR
  • Do not try to invoke web.clickHidden from web.click when element not found.
  • Fix hang when calling method on a uninitialized module.
  • Fix hidden click fallback in web.click.
  • Fix web.type not clearing the previous value.
  • web.selectWindow will automatically wait for window to appear when using title locator.
  • Add optional notOlderThan argument to twilio.getLastSms.
  • Fixed transaction not working if specified before init.

0.32.0

August 9, 2018
  • Fix web.isAlertPresent.
  • Add mob.clickMultipleTimes.
  • Fix int handling in assert.equal
  • Perform Javascript injection click if regular click fails in web.click
  • Reimplemented mob.clickLong using a different method to support iOS 11.4.
  • Fix bug with skipping second record in CSV file.
  • Add http.getResponseHeaders.
  • Fix hang in twilio.getLastSms.
  • Add support for script arguments in web.executeScript.
  • Improve logging.
  • Drop verify module.
  • Bump dependencies.

0.31.1

June 1, 2018
  • Fix mob.getCaps for suites.
  • Bump default swipe speed for mob.swipe to 30.
  • Fix mob.execute.
  • Fix email module to read last email instead of the first.
  • Bump dependencies.

0.31.0

May 16, 2018
  • Add web.getUrl command.
  • Change web.assertText and web.assertValue commands behavior to pass text or value assertions of hidden elements.

0.30.2

May 16, 2018
  • Revised handling of 'require' calls from Oxygen script.

0.30.1

May 16, 2018
  • Various twilio module fixes.
  • Various email module fixes.

0.30.0

May 15, 2018
  • Add support for referencing global node modules with require.
  • Add require.allow option to control if require usage is allowed within the script.
  • Add opt.autoReport flag to test script - allow to turn on/off auto-reporting steps.
  • Add preliminary implementation of twilio module.
  • Add preliminary implementation of email module.

0.29.0

April 22, 2018
  • Add mob.getValue.
  • Fix mob.getText.
  • Allow to use require with global modules inside test scripts.
  • Use window size instead of viewport in web.setWindowSize
  • Add customStep method.
  • Add support for continueOnError option.
  • Fix mob module re-initialization when reopenSession is specified.

0.28.0

March 16, 2018
  • Add --delay switch for delaying command execution.
  • Add web.waitForNotExist.
  • Throw NO_SUCH_ELEMENT from web.waitForVisible if element doesn't exist.
  • Deprecate web.waitForElementPresent.
  • Throw LOCATOR_MATCHES_MULTIPLE_ELEMENTS from web.gettAttribute and web.getText if the locator matches multiple elements.
  • Add mob.selectFrame.
  • Fix context and init method capabilities merging.
  • Bump dependencies.

0.27.0

February 27, 2018
  • Add mob.clickLong.
  • Don't check for element visibility in web.select.

0.26.1

February 14, 2018
  • Fix parameters reading.

0.26.0

February 8, 2018
  • Add mob.enableNetwork.
  • Fix mob.swipe and mob.dragAndDrop docs.
  • Bump dependencies.

0.25.0

January 21, 2018
  • Remove '-m' switch.
  • Add support for accessibility id locators on Android.
  • [Breaking change] Use ~ for accessibility id locators on iOS instead of "id=" prefix.
  • Make driver instance accessible from user level scripts.
  • Add support for external debuggers.

0.24.1

December 25, 2017
  • Emit iteration-end event.

0.24.0

December 25, 2017
  • Add mob.alertAccept.
  • Fix accessibility id locator strategy for native iOS applications.
  • Documentation fixes.

0.23.0

December 16, 2017
  • [Breaking change] Require explicit web module initialization with web.init.
  • Add mob.unlockPattern.
  • A more reliable web.waitFor* implementation.
  • Add preliminary support for JUnit reports.
  • Fix suites execution stopping on the first fatal error.
  • Fix status code handling in http module.
  • Add support for native android id locators without package prefix.
  • Trim and collapse white space for web.getAttribute, getCssValue, getText return values.
  • Collapse whitespace in patterns.
  • Add preliminary date module implementation.
  • webdriverio@4.9.9

0.22.0

November 11, 2017
  • Fix time formatting in reports.
  • Fix reliability issues with web.waitForWindow.
  • Add mob.smsClickLink.
  • Change mob.getSmsText to mob.smsGetText.

0.21.0

October 30, 2017
  • Add serial.write and serial.getBuffer.
  • mob.getSmsText now uses android-smspopup application (see documentation) instead of SMSPopup from Play Store and accepts optional wait argument.
  • Add mob.isExist.
  • Fix regex pattern matching not performing the matching globally.

0.20.0

October 23, 2017
  • Fixed certain errors being ignored.
  • Add serial module.
  • Add http module.
  • Add mob.getLcoation
  • Fixed empty pattern matching in web module.
  • Fixed web.selectWindow and web.waitForWindow failing if there is no currently active window.
  • Fixed name locator handling in web module.

0.19.6

October 17, 2017
  • Return attribute only for the first matching element in web.getAttribute.
  • Fix glob pattern matching in multi line text.

0.19.5

October 16, 2017
  • Return boolean instead of string from mob.is* commands.

0.19.4

October 15, 2017
  • Fix mob.scrollIntoElement

0.19.2

October 12, 2017
  • Use local time instead of UTC in reports.

0.19.0

October 11, 2017
  • Add mob.isCheckable, mob.isChecked, mob.isClickable, mob.isSelected
  • mob.scroll command renamed to mob.dragAndDrop
  • Fix web.type failing if passed value is not a string.
  • Fix handling of parameters with underscore in the name.
  • Update dependencies.

0.18.2

October 1, 2017
  • Fix error types generated on waitForExist and and waitForVisible.

0.18.0

September 29, 2017
  • web, soap, and db modules, previously implemented in C#, have been reimplemented in Node.js. This provides a number of significant benefits - faster test initialization, removes the need for version matching between Oxygen and Selenium servers, solves a number of issues on Linux/OS X related to Mono version incompatibility, allows using soap and db along with the mob module, and provides more flexibility in module's development.

    Note that .NET/Mono is still required if you wish to generate HTML or PDF reports.
    In addition, db module now requires unixODBC libraries to be installed. See README. If unixODBC is not available the module won't be installed.

    Module specific changes are as follows:

    soap
    Removed
    get12 - Removed in favor of the new soap.get method.
    Changed
    get - Signature changed to accept WSDL URL, method name, and any complex objects as service arguments. Unlike prior implementation this method will return object instead of a JSON serialization.
    Added
    describe

    web
    Removed
    setBaseUrl, quit, getXMLPageSourceAsJSON
    Changed
    [waitForWindow, waitForValue, waitForText, waitForNotValuec, waitForNotValue, waitForElementPresent,

           `assertValue`, `assertElementPresent`, `assertAlert`, `assertSelectedValue`, `assertSelectedLabel`] - Now accept timeout as and optional argument.  

    type - Support for ${KEY_} key codes has been removed in favor of Unicode characters.
    point - Accepts two optional arguments xoffset and yoffset.
    getWindowHandles - Return type changed to String[].
    getElementCount - Accepts any of supported locators in addition to XPath.
    getElementCount - Return type changed to Object.

    eyes
    Temporary removed pending rewrite.

  • Updated dependencies.

0.17.0

September 17, 2017
  • Fix iteration collapsing not working in HTML reports when having more than one iteration.
  • Improve HTML reports.
  • Add PDF reporter (--rf=pdf switch).
  • Fix oxygen bin not launching on OSX and Linux.
  • Fix random parameters mode.

0.16.0

September 2, 2017
  • Add web.getCssValue command.

0.15.0

August 21, 2017
  • Add mob.tap command.

0.14.1

August 14, 2017
  • Make log.* commands generate proper output in html reports.
  • Remove log.fatal command.

0.14.0

August 5, 2017
  • Additional mobile locators: desc-contains, text-contains, scrollable, link-contains.
  • Fix not being able to use transactions when running web tests with multiple iterations.
  • Add ability to run mobile tests against remote hubs.

0.13.3

July 31, 2017
  • Fix number of issues with Excel reports generation.
  • Fix report generation when --pm=all option is used.
  • Don't generate unnecessary XML report when using the --rf=html option.

0.13.2

July 28, 2017
  • Fix global installation.

0.13.1

July 28, 2017
  • Initial release published to npm registry.