CHANGELOG
All notable changes to this project will be documented in this file.
[4.7.4] - 01-MAY-2026
Changed
- Updated
appium_libgem to version 16.2.0. - Updated
appium_lib_coregem to version 12.2.0.
[4.7.3] - 21-MAR-2026
Changed
- Update
json,nokogiriandrackgems to address security vulnerabilities.
[4.7.2] - 09-FEB-2026
Added
- Added
UIElement.hasHorizontalOverflow?andUIElement.hasVerticalOverflow?methods. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of the followingUIElementproperties:horizontal_overflowvertical_overflow
[4.7.1] - 13-JAN-2026
Fixed
- Added
activesupportgem as a runtime dependency to prevent test failures if gem is not already installed.
[4.7.0] - 12-JAN-2026
Added
- Added
DataSource.read_filemethod capable of reading from.yml,.json,.csv, or.xmldata files, and acceptingoptionshash for specifying hash key and value conversions to data being read prior to passing toDataPresenterobjects.
Changed
- Refactored
EnvironData.readmethod to allow passingoptionshash for specifying hash key and value conversions to data being read prior to passing toDataPresenterobjects. - Refactored
PageObject.populate_data_fieldsandPageSection.populate_data_fieldsmethods to support passing aSymbolfor a UI element's name to support usingDataPresenterobject attributes to source data. - Updated
appium_libgem to version 16.1.1. - Updated
appium_lib_coregem to version 11.2.0.
Removed
- Unused
DataObjectclass has been removed. - Removed unused
DataSource.read_yaml_node_dataandDataSource.read_json_node_datamethods.
[4.6.11] - 24-NOV-2025
Removed
- Appium version 1.x is no longer supported.
[4.6.10] - 07-NOV-2025
Added
- Added the following
Mediamethods to support verification of media text tracks (subtitles, captions, chapters, descriptions, or metadata):active_track_cue_counttrack_cue_countactive_cue_textcue_textactive_cue_dataall_cues_textall_cues_data
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of the followingMediaproperties::active_track_cue_countactive_cue_textall_tracks_dataactive_cue_dataall_cues_textall_cues_data
Changed
Media.current_timeandMedia.durationnow returnFloatrounded to nearest tenth.
[4.6.9] - 31-OCT-2025
Added
- Added
Table.get_footer_columnsandTable.get_footer_columnmethods. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of the followingTableproperties::column_footers:column_footer:column_header
Changed
UIElement.get_maxnow works with HTML<progress>elements.
[4.6.8] - 27-OCT-2025
Changed
UIElement.aria_valuemax,UIElement.aria_valuemin, andUIElement.aria_valuenownow returnIntegerorFloatinstead ofStringresult.UIElement.aria_rowcountandUIElement.aria_colcountnow returnIntegerinstead ofStringresult.
Added
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of the followingTableproperties::cell_attribute:row_attribute:aria_rowindex
Fixed
Table.get_row_dataandTable.get_row_attributemethods now return data for row 1 instead ofnil.
[4.6.7] - 21-OCT-2025
Added
- Added
UIElement.draggable?method. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of thedraggableproperty.
[4.6.6] - 10-OCT-2025
Changed
- Update Nokogiri gem to address CVE-2025-6021, CVE-2025-6170, CVE-2025-49794, CVE-2025-49795, and CVE-2025-49796.
- Update REXML gem to address DoS vulnerability when parsing XML containing multiple XML declarations.
[4.6.5] - 18-JUL-2025
Changed
- No longer bundling
selenium-webdriveras a runtime dependency.
[4.6.4] - 22-MAY-2025
Changed
- Updated
selenium-webdrivergem to version 4.32.0.
[4.6.3] - 23-APR-2025
Changed
- Updated
selenium-webdrivergem to version 4.31.0.
[4.6.2] - 28-MAR-2025
Changed
- Updated
appium_libgem to version 16.1.0. - Updated
appium_lib_coregem to version 11.0.1. - Updated
selenium-webdrivergem to version 4.30.1.
[4.6.1] - 18-MAR-2025
Changed
- Updated
appium_libgem to version 16.0.1. - Updated
appium_lib_coregem to version 10.0.0. - Updated
selenium-webdrivergem to version 4.29.1.
[4.6.0] - 25-JAN-2025
Changed
- Updated
selenium-webdrivergem to version 4.28.0. - Updated
appium_libgem to version 15.3.0. - Updated
appium_lib_coregem to version 9.5.0. - Ruby version 3.1.0 or greater is now required.
[4.5.15] - 01-NOV-2024
Changed
- Updated
selenium-webdrivergem to version 4.26.0. - Updated
rexmlgem to latest version to address ReDoS vulnerability.
[4.5.14] - 09-OCT-2024
Fixed
- Disable Chrome search engine choice screen.
[4.5.13] - 24-SEP-2024
Changed
- Updated
selenium-webdrivergem to version 4.25.0.
[4.5.12] - 30-AUG-2024
Changed
- Updated
selenium-webdrivergem to version 4.24.0.
[4.5.11] - 08-AUG-2024
Changed
- Updated
appium_libgem to version 15.2.2.
[4.5.10] - 05-AUG-2024
Changed
- Updated
selenium-webdrivergem to version 4.23.0. - Updated
appium_libgem to version 15.2.1. - Updated
appium_lib_coregem to version 9.2.1.
[4.5.9.1] - 26-JUNE-2024
Fixed
- Added
cuke_modelergem as a development dependency so that Cucumber test results logging would not fail when running tests in parallel with Ruby version 3.1.0 or greater.
[4.5.9] - 23-JUNE-2024
Changed
- Updated
selenium-webdrivergem to version 4.22.0.
[4.5.8] - 21-MAY-2024
Changed
- Setting
DOWNLOADSEnvironment Variable totruewill create a/downloadsfolder which will be used as the destination for files that are downloaded by your automated tests. You no longer need to manually create the/downloadsfolder. - Updated
appium_libgem to version 15.1.0. - Updated
appium_lib_coregem to version 9.1.1. - Updated
selenium-webdrivergem to version 4.21.1.
[4.5.7] - 25-APR-2024
Changed
- Updated
selenium-webdrivergem to version 4.20.0. - Updated
appium_libgem to version 15.0.0. - Updated
appium_lib_coregem to version 8.0.1.
[4.5.6] - 02-APR-2024
Fixed
WebDriverConnect.initialize_web_driver,AppiumServer.start, andAppiumServer.running?methods now support Appium version 2.x. Backward compatibility with Appium version 1.x is provided ifAPPIUM_SERVER_VERSIONEnvironment Variable is set to1.
[4.5.5] - 27-MAR-2024
Changed
- Updated
selenium-webdrivergem to version 4.19.0.
[4.5.4] - 04-MAR-2024
Changed
- Updated
selenium-webdrivergem to version 4.18.1. - Updated
rackgem to version 3.0.9.1. - Updated
nokogirigem to version 1.16.2.
[4.5.3] - 27-JAN-2024
Changed
- Updated
capybaragem to version 3.40.0.
[4.5.2] - 26-JAN-2024
Changed
- Updated
appium_libgem to version 14.0.0. - Updated
selenium-webdrivergem to version 4.17.0.
[4.5.1] - 18-JAN-2024
Fixed
WebDriverConnect.driver_exists?andactivate_drivermethods now convert string passed as a driver name to a symbol with lower case letters and spaces replaced with underscores, which is howWebDriverConnect.initialize_web_driversaves the driver name.
[4.5.0] - 16-JAN-2024
Removed
- Support for test data assets stored in Excel
.xlshas been removed because.xlsfiles cannot be properly tracked and diffed by source control tools like git. ExcelDataandExcelDataSourceclasses removed.- Removed dependence on
spreadsheetgem.
[4.4.7] - 13-JAN-2024
Fixed
WebDriverConnect.activate_drivernow correctly setsEnviron.driver_nameto name of activated WebDriver instance.WebDriverConnect.close_all_driversno longer raises exception if called before any WebDrivers have been instantiated.
Added
- Added
WebDriverConnect.driver_exists?method.
[4.4.6] - 12-JAN-2024
Fixed
WebDriverConnect.num_driversno longer raises exception if called before any WebDrivers have been instantiated.
[4.4.5] - 10-JAN-2024
Fixed
UIElement.find_objectno longer raisesSelenium::WebDriver::Error::StaleElementReferenceErrorwhen testing with multiple WebDriver instances.DataPresenter.initializeno longer fails ifdataparameter isnil.
[4.4.4] - 08-JAN-2024
Fixed
List.get_list_itemno longer returnsnil.
[4.4.3] - 24-DEC-2023
Changed
- Changed Sauce Labs
DATA_CENTEREnvironment Variable toSL_DATA_CENTER.
[4.4.2] - 23-DEC-2023
Added
- Added support for specifying and connecting to web browsers on unsupported cloud hosting services using
customuser- defined driver and capabilities.
[4.4.0] - 22-DEC-2023
Added
- Added support for connecting to, and switching between multiple WebDriver or Appium connected desktop and/or mobile web
browsers by utilizing the following new methods:
WebDriverConnect.activate_driverWebDriverConnect.num_driversWebDriverConnect.close_all_drivers
- Added support for web page scrolling by utilizing the following methods:
Browsers.scroll_to_bottomBrowsers.scroll_to_topBrowsers.scroll_to
Changed
WebDriverConnect.initialize_web_drivermethod now accepts an optionaloptionshash for specifying desired capabilities (using W3C protocol), driver, driver name, endpoint URL, device type, and desktop browser window size information.- The
HOST_BROWSEREnvironment Variable is no longer required to support emulated mobile web browsers. - The
SELENIUMEnvironment Variable is no longer used to instantiate a WebDriver connection to a Selenium 4 Grid instance. To establish a connection to browser instances on a Selenium 4 Grid, set theDRIVEREnvironment Variable togrid. - TestCentricity now supports and integrates with Selenium-Webdriver version 4.14 and Capybara version 3.39.
- Updated profiles for emulated mobile device browsers.
- Removed dependency on
appium_capybaraandwebdriversgems. - Ruby version 3.0.0 or greater is now required.
- Locally hosted Internet Explorer web browsers are no longer supported.
[4.3.1] - 19-AUG-2022
Added
- Added support for connecting to remote mobile browsers on iOS simulators and Android emulators on the TestingBot service.
[4.3.0] - 01-AUG-2022
Added
The
DRIVEREnvironment Variable is now used to specify theappium,browserstack,saucelabs,testingbot, orlambdatestdriver.Changed
The
WEB_BROWSEREnvironment Variable is no longer used to specify theappium,browserstack,saucelabs,testingbot, orlambdatestdriver.TestCentricity now supports and integrates with Selenium-Webdriver version 4.3.
[4.2.6] - 12-JUNE-2022
Fixed
- Fix
gemspecto no longer include specs and Cucumber tests as part of deployment package for gem.
[4.2.5] - 10-JUNE-2022
Fixed
*WebDriverConnect.initialize_web_driver method no longer raises No such file or directory @ dir_s_mkdir error due to
missing Downloads folder when running tests in parallel.
[4.2.4] - 02-JUNE-2022
Added
- Added
UIElement.wait_until_enabledmethod
[4.2.3] - 01-JUNE-2022
Added
- Added
UIElement.wait_while_busymethod - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofaria_busyattribute.
[4.2.2] - 21-MAY-2022
Changed
- Update default version of Appium used when running tests on Sauce Labs service.
- Refactored capabilities definition when running with locally hosted Appium instance.
[4.2.1] - 23-APR-2022
Added
- Added the following
Audio,Media, andVideomethods to support verification of media text tracks (subtitles, captions, chapters, descriptions, or metadata):track_countactive_trackactive_track_dataall_tracks_datatrack_dataactive_track_sourcetrack_source
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of the followingMediaproperties::track_count:active_track:active_track_data:all_tracks_data:track_data:active_track_source:track_source
[4.2.0] - 20-APR-2022
Added
TextField.validation_messageandTextField.validity?methods added.- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of the followingTextField.validity?properties::badInput:customError:patternMismatch:rangeOverflow:rangeUnderflow:stepMismatch:tooLong:tooShort:typeMismatch:valid:valueMissing
[4.1.10] - 19-APR-2022
Fixed
PageObject.set_verify_focusandPageSection.set_verify_focusmethods now correctly return theidof the UI element that unexpectedly has focus during an exception.- Rolled back
require_allgem version to 1.5.0 in gemspec development dependencies due toRequireAll::LoadErrorwhen running gem test specs and features.
[4.1.9] - 18-APR-2022
Fixed
PageSection.radiono longer returnswrong number of argumentserror.PageObject.populate_data_fieldsandPageSection.populate_data_fieldsmethods no longer skip setting checkboxes or radio buttons to the unchecked state.
Added
CheckBox.define_custom_elementsandRadio.define_custom_elementsmethods now support specifying a childinputcomponent contained by a top levellabelelement.
[4.1.8] - 31-MAR-2022
Fixed
Image.loaded?now correctly returns aBooleanvalue instead of aString.Video.video_heightandVideo.video_widthnow correctly returns anIntegervalue instead of aString.UIElement.scroll_tonow works for all supported browsers.
Changed
UIElement.crossoriginis no longer limited toAudioandVideoobjects.
[4.1.7] - 28-MAR-2022
Fixed
CheckBox.set_checkbox_stateandRadio.set_selected_statework on iOS simulators again.
Changed
Audio.playback_rateandVideo.playback_ratenow return value as aFloatinstead of aString.Audio.default_playback_rateandVideo.default_playback_ratenow return value as aFloatinstead of aString.Audio.current_timeandVideo.current_timenow return value as aFloatrounded to two decimal places.Audio.durationandVideo.durationnow return value as aFloatrounded to two decimal places.
Added
Audio.muteandVideo.mutemethods added.Audio.unmuteandVideo.unmutemethods added.Audio.playback_rateandVideo.playback_ratenow accept aFloatvalue as an input for setting the playback rate of media.Audio.volumeandVideo.volumenow accept aFloatvalue between 0 and 1 as an input for setting the volume of media.
[4.1.6] - 21-MAR-2022
Fixed
PageObject.verify_page_existsnow works withpage_locatortraits expressed in Xpath format, and no longer fails with ainvalid selector: An invalid or illegal selector was specified - Selenium::WebDriver::Error::InvalidSelectorErrorerror.
Added
UIElement.required?method added.PageObject.populate_data_fieldsandPageSection.populate_data_fieldsmethods now work with the following:input(type='color')color picker controls if they are specified as atextfieldtype element.input(type='range')slider controls if they are specified as arangetype element.input(type='file')file upload controls if they are specified as afilefieldtype element.
[4.1.5] - 15-MAR-2022
Fixed
SelectList.selected?now correctly returns selected value for customselectlistcontrols.
Updated
- Updated HTML documentation.
[4.1.4] - 09-MAR-2022
Fixed
Environ.driveris now correctly set to:appiumwhen target test browser is running on iOS or Android simulators or physical devices.
[4.1.3] - 08-MAR-2022
Fixed
- Fixed
AppiumServer.startso that it no longer times out after failing to start Appium.
Updated
- Updated docs regarding the
SHUTDOWN_OTHER_SIMSEnvironment Variable when testing on iOS Simulators.
[4.1.2] - 07-MAR-2022
Updated
- Updated HTML documentation.
[4.1.1] - 03-MAR-2022
Changed
- W3C WebDriver-compliant sessions using Selenium version 4.x are now supported when using the BrowserStack, LambdaTest, TestingBot, and SauceLabs services.
- W3C WebDriver-compliant sessions are now supported when running against remote browsers hosted on Selenium Grid 4 and Dockerized Selenium Grid 4 environments.
[4.1.0] - 28-FEB-2022
Removed
- Support for CrossBrowserTesting and Gridlastic cloud hosted Selenium grids have been removed due to their lack of support for Selenium 4.x and the W3C browser capabilities protocol.
Added
- TestCentricity now supports and integrates with Selenium-Webdriver version 4.1.
- Added support for locally hosted Microsoft Edge desktop web browsers, including in
headlessmode. - Added
CheckBox.define_custom_elementsandRadio.define_custom_elementsmethods to support abstracted UI implementations where theinput type="checkbox"orinput type="radio"object is hidden or obscured by a proxy object, typically alabel. - Added support for
shutdownOtherSimulatorsandforceSimulatorSoftwareKeyboardPresencecapabilities for iOS simulators when testing with Mobile Safari browser on iOS Simulators.
Changed
checkboxandradiomethods no longer accept an optionalproxy. Calling thecheckboxorradiomethods with aproxyparameter will result in awrong number of arguments (given 3, expected 2) (ArgumentError)exception. Use thedefine_custom_elementsmethod to specify the locator for an associatedproxyand/orlabelelement. Thedefine_custom_elementsmethod can be called from aninitializemethod for thePageObjectorPageSectionwhere thecheckboxorradiois instantiated.- Ruby version 2.7 or greater required.
- Selenium-Webdriver version 4 or greater required.
[4.0.3] - 30-DEC-2021
Changed
- Primary test data path has been changed from
features/test_data/toconfig/test_data/.
Fixed
- No longer throws a
NoMethodError: undefined method 'World' for main:Objecterror when using RSpec.
[4.0.0] - 18-APR-2021
Changed
WebDriverConnect.initialize_web_drivermethod now accepts anoptionshash as an optional parameter, which can be used to specify an optional base host URL and/or the desired Selenium-Webdriver capabilities required to establish a connection with a cloud hosted target web browser.- User defined mobile device profiles can be specified in a
device.ymlfile for testing locally hosted emulated mobile web browsers running in an instance of the Chrome desktop browser. The user specified device profiles must be located atconfig/data/devices/devices.yml. Refer to the User defined mobile device profiles section of the README file.
Removed
- Removed support for the following legacy UI elements:
CellElementCellButtonCellCheckBoxCellRadioCellImageListElementListButtonListCheckBox
- Removed support for Siebel Open UI objects. This includes removal of the following legacy methods:
CheckBox.set_siebel_checkbox_stateSelectList.choose_siebel_optionSelectList.get_siebel_optionsSelectList.verify_siebel_optionsSelectList.read_only?UIElement.invoke_siebel_dialogUIElement.invoke_siebel_popupUIElement.get_siebel_object_type
[3.3.0] - 14-MAR-2021
Fixed
WebDriverConnect.initialize_web_drivermethod now correctly sets local Chrome browser Download directory when running with headless Chrome.
[3.2.25] - 11-MAR-2021
Added
- Added
String.titlecasemethod.
[3.2.23] - 11-FEB-2021
Changed
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to allow:translate_upcase,:translate_downcase,:translate_capitalize, and:translate_titlecaseconversions to fall back to:endefault locale if translated strings are missing from the current locale specified inI18n.locale.
[3.2.22] - 09-FEB-2021
Fixed
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to correctly handle:translate_upcase,:translate_downcase,:translate_capitalize, and:translate_titlecaseconversions for Arrays ofString.
[3.2.21] - 04-FEB-2021
Changed
UIElement.hover_atmethod now accepts an optionalvisibleparameter to allow hovering over UI elements that are not visible.
[3.2.20] - 21-JAN-2021
Changed
UIElement.hovermethod now accepts an optionalvisibleparameter to allow hovering over UI elements that are not visible.
[3.2.19] - 05-JAN-2021
Fixed
SelectList.choose_optionandSelectList.get_optionsmethods now wait up to 5 seconds for list drop menu to appear.
[3.2.18] - 12-AUG-2020
Fixed
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to correctly handle:row,:column,:cell,:item, and:attributeproperties.
[3.2.17] - 19-JUNE-2020
Changed
- Updated
Table.define_table_elementsmethod to accept value for:row_headerelement. - Updated
Table.get_row_count,Table.get_column_count, andTable.get_table_cell_locatormethods to support tables with row headers in row #1.
[3.2.16] - 13-MAY-2020
Changed
WebDriverConnect.initialize_web_drivermethod now sets local Chrome and Firefox browser Download directory to separate folders for each parallel test thread when usingparallel_testsgem to run tests in concurrent threads.
[3.2.15] - 06-APR-2020
Fixed
PageObject.populate_data_fieldsandPageSection.populate_data_fieldsmethods acceptStringorBooleanvalues for checkboxes and radio buttons.
[3.2.14] - 06-APR-2020
Added
- Added
UIElement.scroll_tomethod.
[3.2.13] - 24-MAR-2020
Added
- Added
PageObject.send_keysmethod.
[3.2.12] - 11-MAR-2020
Added
- Added
UIElement.focused?method. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of thefocusedproperty.
[3.2.11] - 10-MAR-2020
Added
- Added
PageSection.verify_focus_ordermethod.
[3.2.10] - 09-MAR-2020
Added
- Added
PageObject.verify_focus_ordermethod.
[3.2.9] - 12-FEB-2020
Fixed
- Fixed
UIElement.wait_until_value_is,List.wait_until_item_count_is, andTable.wait_until_row_count_is' methods.
[3.2.8] - 08-FEB-2020
Fixed
- Fixed
UIElement.visible?method that was broken in release 3.2.7.
[3.2.7] - 05-FEB-2020
Added
- Added
Audio.crossoriginandVideo.crossoriginmethods. - Added
Audio.preloadandVideo.preloadmethods. - Added
Video.postermethod. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of thecrossorigin,preload, andposterproperties.
[3.2.6] - 31-JAN-2020
Changed
Audio.volumeandVideo.volumemethods now return aFloat.
[3.2.5] - 25-JAN-2020
Added
- Added
UIElement.content_editable?method. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of thecontent_editableproperty.
Fixed
- Fixed
UIElement.aria_multiselectable?method.
[3.2.4] - 16-JAN-2020
Added
- Added
RangetypeUIElementto support interaction with and verification of HTML5 Input Range Slider Objects.
[3.2.3] - 29-DEC-2019
Added
- Additional methods to support WCAG 2.x accessibility testing and verification:
UIElement.aria_valuemaxmethodUIElement.aria_valueminmethodUIElement.aria_valuenowmethodUIElement.aria_valuetextmethodUIElement.aria_orientationmethodUIElement.aria_keyshortcutsmethodUIElement.aria_roledescriptionmethodUIElement.aria_autocompletemethodUIElement.aria_modal?methodUIElement.aria_busy?methodUIElement.aria_multiline?methodUIElement.aria_multiselectable?methodUIElement.aria_controlsmethod
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of the following properties:aria_valuemaxaria_valueminaria_valuenowaria_valuetextaria_orientationaria_roledescriptionaria_autocompletearia_modalaria_keyshortcutsaria_multilinearia_multiselectablearia_controls
[3.2.2] - 16-OCT-2019
Added
- Added device profiles for iPhone 11, 11 Pro, and 11 Pro Max (iOS 13.1) with Mobile Safari browser.
- Added
Table.wait_until_row_count_isandTable.wait_until_row_count_changesmethods. - Added
CheckBox.indeterminate?method. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofindeterminateproperty. - Updated device profiles for iPad Pro 12.9" 3rd Generation (iOS 13.1) with Mobile Safari browser.
[3.2.1] - 03-OCT-2019
Changed
CheckBox.visible?,CheckBox.disabled?, andCheckBox.get_valuemethods now work with React and Ember checkboxes with proxy elements.Radio.visible?,Radio.disabled?, andRadio.get_valuemethods now work with React and Ember radio buttons with proxy elements.
[3.2.0] - 28-JULY-2019
Added
- Added support for connecting to and running your tests on cloud hosted browsers on the LambdaTest cloud platform.
- Added
UIElement.obscured?andUIElement.inspectmethods. - Added
Video.wait_until_ready_state_isandAudio.wait_until_ready_state_ismethods.
Changed
Video.ready_stateandAudio.ready_statemethods now return an Integer result.
[3.1.11] - 20-JUNE-2019
Added
- Added
SelectList.get_group_countandSelectList.get_group_headingsmethods. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofgroupcountandgroup_headingsproperties ofSelectListobjects.
[3.1.10] - 21-MAY-2019
Fixed
- Improved compatibility with React and Chosen select lists.
[3.1.9] - 16-MAY-2019
Added
- Added support for enabling popups when testing on BrowserStack cloud hosted Safari, IE, and Edge browsers.
- Added support for enabling all cookies when testing on BrowserStack cloud hosted Safari browsers.
Changed
List.get_list_itemsandList.get_list_itemmethods now strip leading and trailing whitespace from returned values.
[3.1.8] - 08-MAY-2019
Added
- Added
Link.hrefmethod. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofhrefproperty.
Changed
- Updated device profiles for iPhone 7 (iOS 12.2) with Mobile Firefox browser and iPad (iOS 12.2) with Mobile Firefox browser.
- Updated device profiles for iPhone 7 (iOS 12.2) with Mobile Edge browser and iPad (iOS 12.2) with Mobile Edge browser.
- Updated device profiles for iPhone 7 (iOS 12.2) with Mobile Chrome browser and iPad (iOS 12.2) with Mobile Chrome browser.
[3.1.7] - 01-FEB-2019
Added
- Added
UIElement.titleandPageObject.titlemethods. - Added
Video.video_height, andVideo.video_widthmethods. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification oftitleproperty.
[3.1.6] - 20-JAN-2019
Added
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofnameproperty.
[3.1.5] - 06-JAN-2019
Added
- Additional methods to support WCAG 2.x accessibility testing and verification:
UIElement.aria_rowcountmethod.UIElement.aria_colcountmethod.UIElement.aria_sortmethod.UIElement.aria_haspopup?method.UIElement.aria_pressed?method.
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofaria_rowcount,aria_colcount,aria_sort,aria_pressed, andaria_haspopupproperties.
[3.1.4] - 2018-12-12
Fixed
PageObject.audio,PageObject.audios,PageObject.video, andPageObject.videosmethods now correctly instantiate HTML 5 Audio and Video objects at the page level.
[3.1.3] - 2018-12-08
Added
- Additional methods to support WCAG 2.x accessibility testing and verification:
UIElement.aria_invalid?method.UIElement.aria_checked?method.UIElement.aria_readonly?method.
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofaria_invalid,aria_checked, andaria_readonlyproperties.
[3.1.2] - 2018-12-03
Added
- Added
Audio.current_time(setter),Audio.play, andAudio.pausemethods. - Added
Video.current_time(setter),Video.play, andVideo.pausemethods.
[3.1.1] - 2018-11-30
Added
- Added device profiles for iPhone XR, XS, and XS Max (iOS 12.1) with Mobile Safari browser.
- Added device profiles for iPad Pro 11" and iPad Pro 12.9" 3rd Generation (iOS 12.1) with Mobile Safari browser.
Changed
- Updated device profiles for iPhone 7 (iOS 12) with Mobile Firefox browser and iPad (iOS 12) with Mobile Firefox browser.
- Updated device profiles for iPhone 7 (iOS 12) with Mobile Edge browser and iPad (iOS 12) with Mobile Edge browser.
- Updated device profiles for iPhone 7 (iOS 12) with Mobile Chrome browser and iPad (iOS 12) with Mobile Chrome browser.
[3.1.0] - 2018-11-10
Added
- Adding greater support for WCAG 2.x accessibility testing and verification:
UIElement.rolemethod.UIElement.tabindexmethod.UIElement.aria_labelledbymethod.UIElement.aria_describedbymethod.UIElement.aria_livemethod.UIElement.aria_selected?method.UIElement.aria_hidden?method.UIElement.aria_expanded?method.UIElement.aria_required?method.
- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification of the following properties:roletabindexaria-labelledbyaria-describedbyaria-livearia-selectedaria-hiddenaria-expandedaria-required
[3.0.20] - 2018-11-08
Changed
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods now ignore case and whitespace when verifying text captions and values when running tests against Microsoft Edge browsers to accommodate known Edge WebDriver Issue #11322543.- Updated
PageObject.populate_data_fieldsandPageSection.populate_data_fieldsmethods to accept optionalintegrity_checkparameter.
[3.0.19] - 2018-10-10
Added
- Added support for testing file downloads with locally hosted instances of Chrome or Firefox desktop browsers.
Changed
Audio.current_time,Audio.duration,Video.current_time, andVideo.durationmethods now return aFloat.
Removed
- Removed support for legacy Firefox version 47.0.1.
- Removed deprecated
TestCentricity::WebDriverConnect.set_webdriver_pathmethod.
[3.0.18] - 2018-10-02
Added
UIElement.stylemethod.- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofstyleproperty.
Changed
- Updated device profiles for iPhone 7 (iOS 12) with Mobile Firefox browser and iPad (iOS 12) with Mobile Firefox browser.
- Updated device profiles for iPhone 7 (iOS 12) with Mobile Edge browser and iPad (iOS 12) with Mobile Edge browser.
- Updated device profiles for iPhone 7 (iOS 12) with Mobile Chrome browser and iPad (iOS 12) with Mobile Chrome browser.
Removed
- Removed
iPhone,iPhone4, andiPhone5device profiles.
[3.0.17] - 2018-10-01
Added
UIElement.aria_disabled?andUIElement.aria_labelmethods.- Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofaria-labelandaria-disabledproperties.
[3.0.16] - 2018-09-21
Added
Image.srcandImage.altmethod.- Added
VideoandAudiotypeUIElementto support verification of HTML5 Video and Audio Objects.
[3.0.15] - 2018-09-19
Added
UIElement.hover_atmethod.- Added support for specifying IP Geolocation when testing on BrowserStack cloud hosted browsers.
[3.0.14] - 2018-09-17
Added
- Added support for testing file uploads in browsers running on remote cloud hosted services as well as in Selenium Grid and Dockerized Selenium Grid environments.
[3.0.13] - 2018-08-10
Fixed
- Improved response times of
List.get_item_countandList.get_list_itemsmethods by shorteningwaittime.
[3.0.12] - 2018-08-09
Added
PageSection.hovermethod.List.hover_itemmethod.
[3.0.11] - 2018-08-05
Added
UIElement.countmethod.
[3.0.10] - 2018-07-20
Added
Image.broken?method.UIElement.highlightandUIElement.unhighlightmethods.
Changed
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods now takes screenshots that display a red dashed rectangular highlight around any UI element with property states that do not match expected results.
Removed
- Removed deprecated
DataObject.set_currentmethod.
[3.0.9] - 2018-07-05
Added
- Added
List.choose_itemandList.get_selected_itemmethods. - Added
SelectList.setmethod.
[3.0.8] - 2018-06-28
Added
- Added
PageObject.wait_for_ajaxmethod.
Changed
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods now accept optionalfail_messagestring parameter to add context to error messages when UI verifications raise an exception.
[3.0.7] - 2018-06-21
Added
- Added support for connecting to and running your tests in desktop and emulated mobile web browsers hosted on Selenium Grid and Dockerized Selenium Grid environments.
- Added
Environ.report_headermethod that can be used to provide formatted test environment information in HTML test results.
Deprecated
- Deprecated
TestCentricity::WebDriverConnect.set_webdriver_pathmethod because the correct WebDriver is now automatically set.
[3.0.6] - 2018-06-14
Added
- Added support for connecting to and running your tests on cloud hosted browsers on the Gridlastic cloud platform.
- Added support for specifying Selenium WebDriver version, browser-specific WebDriver version (for Firefox, IE, and Safari), and browser console logs when running tests on BrowserStack hosted browsers. Refer to section 8.5.1 (Remote desktop browsers on the BrowserStack service) in the README.
Changed
- Updated device profiles for iPhone 7 (iOS 11) with Mobile Firefox browser and iPad (iOS 11) with Mobile Firefox browser.
- Updated device profiles for iPhone 7 (iOS 11) with Mobile Edge browser and iPad (iOS 11) with Mobile Edge browser.
- Updated device profiles for iPhone 7 (iOS 11) with Mobile Chrome browser and iPad (iOS 11) with Mobile Chrome browser.
[3.0.5] - 2018-05-17
Added
- Added
Environ.headlessmethod. Will returntrueif testing against a headless instance of Chrome or Firefox.
[3.0.4] - 2018-05-12
Fixed
- Refactored
SelectListmethods to work with Capybara version 3.x.
[3.0.3] - 2018-05-09
Changed
- Pinning to Capybara version 2.18.0 because Capybara 3.x breaks several
SelectListmethods.
[3.0.2] - 2018-05-09
Changed
PageManager.find_pagemethod now raises an exception if the requested page object has not been defined and instantiated.
[3.0.1] - 2018-04-28
Changed
- Updated device profiles for iPhone 7 (iOS 11) with Mobile Firefox browser and iPad (iOS 10) with Mobile Firefox browser.
- Updated device profiles for iPhone 7 (iOS 11) with Mobile Edge browser and iPad (iOS 10) with Mobile Edge browser.
- Updated device profiles for iPhone 7 (iOS 11) with Mobile Chrome browser and iPad (iOS 10) with Mobile Chrome browser.
[3.0.0] - 2018-04-25
Added
- The TestCentricityâ„¢ Web gem now works with Selenium-WebDriver version 3.11 and geckodriver version 0.20.1 (or later) to support testing of the latest versions of Firefox web browsers.
- Support for testing on locally hosted "headless" Chrome or Firefox browsers has been added.
- Support for headless browser testing using Poltergeist and PhantomJS has been removed.
- Support for Legacy FirefoxDriver (used in Firefox versions < 48) has been added.
Fixed
TestCentricity::WebDriverConnect.set_webdriver_pathmethod now sets the path to the appropriate geckodriver file for OS X or Windows when testing on locally hosted Firefox browsers.
[2.4.3] - 2018-04-11
Changed
- Updated device profiles for iPhone 7 (iOS 11) with Mobile Firefox browser and iPad (iOS 10) with Mobile Firefox browser.
[2.4.1] - 2018-03-27
Added
- Added device profiles for iPad (iOS 10) with MS Edge browser.
[2.4.0] - 2018-03-25
Changed
- Updated
TestCentricity::WebDriverConnect.initialize_web_drivermethod to read theAPP_FULL_RESET,APP_NO_RESET, andNEW_COMMAND_TIMEOUTEnvironment Variables and set the correspondingfullReset,noReset, andnewCommandTimeoutAppium capabilities for iOS and Android physical devices and simulators. Also reads theWDA_LOCAL_PORTEnvironment Variable and sets thewdaLocalPortAppium capability for iOS physical devices only.
[2.3.19] - 2018-03-14
Fixed
- Fixed device profile for
android_phone- Generic Android Phone.
[2.3.18] - 2018-03-11
Changed
- Updated
SelectList.define_list_elementsmethod to accept value for:list_triggerelement. - Updated
SelectList.choose_optionto respect:list_itemvalue and to click on:list_triggerelement, if one is specified. - Updated
PageSectionandPageObjectUI element object declaration methods to no longer useclass_evalpattern. - Updated device profiles for iPhone 7 (iOS 10) with Chrome browser and iPad (iOS 10) with Chrome browser.
Fixed
- Fixed
SelectList.choose_optionto also accept:text,:value, and:indexoption hashes across all types of select list objects.
[2.3.17] - 2018-03-08
Added
- Added
List.wait_until_item_count_isandList.wait_until_item_count_changesmethods.
Changed
UIElement.wait_until_value_isandList.wait_until_item_count_ismethods now accept comparison hash.
[2.3.16] - 2018-03-04
Added
- Added
PageSection.double_click,PageObject.right_click, andPageObject.send_keysmethods.
[2.3.15] - 2018-03-02
Added
- Added
PageObject.wait_until_existsandPageObject.wait_until_gonemethods.
Fixed
- Fixed bug in
UIElement.get_object_typemethod that could result in aNoMethodError obj not definederror. - Fixed bug in
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods that failed to enqueue errors when UI elements could not be found.
[2.3.14] - 2018-02-28
Changed
- Updated device profiles for iPhone 7 (iOS 10) with MS Edge browser.
[2.3.13] - 2018-02-09
Added
- Added
AppiumServer.start,AppiumServer.running?, andAppiumServer.stopmethods for starting and stopping the Appium Server prior to executing tests on iOS physical devices or simulators, or Android virtual device emulators.
[2.3.12] - 2018-02-07
Added
- Added
Environ.is_simulator?andEnviron.is_web?methods.
[2.3.11] - 2018-02-02
Added
- Added support for running tests in Mobile Safari browser on physical iOS devices.
Changed
- Updated device profiles for iPhone 7 (iOS 10) with Mobile Firefox browser and iPad (iOS 10) with Mobile Firefox browser.
[2.3.10] - 2018-01-31
Added
- Added support for running tests in mobile Chrome or Android browsers on Android Studio virtual device emulators.
- Added
displayed?,get_all_items_count, andget_all_list_itemsmethods toPageSectionclass. - Added
get_all_items_count, andget_all_list_itemsmethods toListclass.
[2.3.9] - 2018-01-27
Changed
- Updated
PageObject.populate_data_fieldsandPageSection.populate_data_fieldsmethods to accept optionalwait_timeparameter. - Updated device profiles for iPhone 7 (iOS 10) with MS Edge browser, iPhone 7 (iOS 10) with Chrome browser, and iPhone 7 (iOS 10) with Firefox browser.
- Updated device profiles for iPad (iOS 10) with Chrome browser and iPad (iOS 10) with Firefox browser.
[2.3.8] - 2018-01-23
Fixed
- Fixed locator resolution for Indexed PageSection Objects.
[2.3.7] - 2018-01-18
Added
- Added
width,height,x,y, anddisplayed?methods toUIElementclass.
[2.3.6] - 2017-12-21
Added
- Added
TextField.clearmethod for deleting the contents of text fields. This method should trigger theonchangeevent for the associated text field.
Changed
TextField.clearmethod now works with mostnumbertype fields.
[2.3.5] - 2017-12-19
Changed
- Updated
PageObject.populate_data_fieldsandPageSection.populate_data_fieldsmethods to be compatible with Redactor editor fields. - Updated device profiles for iPhone 7 (iOS 10) with MS Edge browser, iPhone 7 (iOS 10) with Chrome browser, and iPhone 7 (iOS 10) with Firefox browser.
[2.3.4] - 2017-12-12
Fixed
- Fixed bug in
PageObject.populate_data_fieldsandPageSection.populate_data_fieldsmethods that prevented deletion of data in number type textfields and textarea controls.
[2.3.3] - 2017-12-09
Added
- Added device profile for iPhone 7 (iOS 10) with MS Edge browser.
Fixed
- Corrected device profiles for iPad (iOS 10) with Mobile Chrome browser and iPad (iOS 10) with Mobile Firefox browser.
[2.3.1] - 2017-12-07
Added
- When testing using remotely hosted browsers on the BrowserStack service, the BrowserStack Local instance is automatically started if the
TUNNELINGEnvironment Variable is set totrue.Environ.tunnelingwill be set to true if the BrowserStack Local instance is succesfully started. - Added
TestCentricity::WebDriverConnect.close_tunnelmethod to close BrowserStack Local instance when Local testing is enabled. Refer to the Remotely hosted desktop and mobile web browsers section for information on usage.
[2.2.1] - 2017-11-29
Changed
SelectList.choose_optionmethod now accepts index values for Chosen list objects.
[2.2.0] - 2017-11-29
Changed
- CSS selectors or XPath expressions may be used as locators for all types of UI Elements, including tables.
[2.1.10] - 2017-11-14
Added
- Added device profiles for iPhone 7 (iOS 10) with Mobile Firefox browser and iPad (iOS 10) with Mobile Firefox browser.
[2.1.9] - 2017-11-13
Fixed
- Fixed bug in
SelectList.choose_option,SelectList.get_options,SelectList.get_option_count, andSelectList.get_selected_optionmethods which did not recognize grouped option in Chosen list objects.
[2.1.8] - 2017-11-09
Added
- Added
PageSection.verify_list_itemsmethod for Indexed PageSection Objects.
[2.1.7] - 2017-11-07
Changed
- Updated
PageObject.populate_data_fieldsandPageSection.populate_data_fieldsmethods to use backspace characters to delete contents of a textfield instead of usingclear, which was preventingonchangeJavaScript events from being triggered in some browsers.
[2.1.6] - 2017-10-31
Fixed
- Fixed bug in
TestCentricity::WebDriverConnect.set_webdriver_pathmethod that was failing to set the path to the appropriate chromedriver file for OS X and Windows.
[2.1.5] - 2017-10-28
Added
- Added
get_min,get_max, andget_stepmethods toTextFieldclass. - Updated
PageObject.verify_ui_statesandPageSection.verify_ui_statesmethods to support verification ofmin,max, andstepattributes for textfields.
Fixed
- Fixed Chrome and Firefox support for setting browser language via the
LOCALEEnvironment Variable. This capability now works for emulated mobile browsers hosted in a local instance of Chrome or Firefox.
[2.1.4] - 2017-10-24
Added
- Added suppression of the Info Bar that displays "Chrome is being controlled by automated test software" on locally hosted instances of the Chrome browser.
[2.1.3] - 2017-10-17
Added
- Added support for "tiling" or cascading multiple browser windows when the
BROWSER_TILEandPARALLELEnvironment Variables are set to true. For each concurrent parallel thread being executed, the position of each browser will be offset by 100 pixels right and 100 pixels down. For parallel test execution, use the parallel_tests gem to decrease overall test execution time.
[2.1.2] - 2017-10-01
Added
- Added device profiles for Microsoft Lumia 950, Blackberry Leap, Blackberry Passport, and Kindle Fire HD 10
- Added ability to set browser language support via the
LOCALEEnvironment Variable for local instances of Chrome browsers
[2.1.0] - 2017-09-23
Added
- Added device profiles for iPhone 8, iPhone 8 Plus, iPhone X devices running iOS 11
- Added device profile for iPad Pro 10.5" with iOS 11
Changed
- Updated iPhone 7 and iPhone 7 Plus profiles to iOS 10
- Updated Google Pixel and Google Pixel XL profiles to Android 8
- Added device profiles for iPhone 7 (iOS 10) with Mobile Chrome browser and iPad (iOS 10) with Mobile Chrome browser
- The
TestCentricity::WebDriverConnect.initialize_web_drivermethod now sets theEnvironobject to the correct device connection states for local and cloud hosted browsers.
Fixed
- The
TestCentricity::WebDriverConnect.initialize_web_drivermethod no longer callsinitialize_browser_sizewhen running tests against cloud hosted mobile web browser, which was resulting in Appium throwing exceptions for unsupported method calls. - The
TestCentricity::WebDriverConnect.set_webdriver_pathmethod now correctly sets the path for Chrome webDrivers when theHOST_BROWSEREnvironment Variable is set tochrome. Tests against locally hosted emulated mobile web browser running on a local instance of Chrome will now work correctly.