Following are the significant changes since last release:
- Support for OR relationship among different values of same locator type - coded as well as GNS.
- Support for Visual Relationships
- Coded - Added at App/Page level.
- GNS Support added - Can provide label from same GNS file.
- Coded - widget call can be used to provide as relationship rather than existing element.
- GNS supports chain of relation: label1 -> label2 -> label3
- When multiple locators are provided with an OR relationship, relations are applied to each one of them.
- In GNS the relationship labels can contain Arjuna placeholders and then the parent label can be formaated as usual using gns.formatter call.
- Nested element finding falls back to direct finding with WebDriver as JS execution support exists only at driver level in Selenium.
- with.JS and With.Point is supported at element level, however it does not do nested element finding, rather uses driver itself.
- The fallback mechanism for JS, Point and Relative locators has been added so that such locators can be defined without issues in GNS files or coded GuiSections which have root element set for them.
- 'pos' meta key in widget meta data:
- Supported in coded as well GNS format.
- Supported in nested element finding.
- Value can be an int, a list, an extractor string literal, an extractor specification dict or an extractor object.
- Docs added for additional OR support, Visual Relationships and position filters
- Rearranged locator docs to place coded and GNS entries next to each other.
- Added GuiWidgetDefinitionError as an exception to TPI.
- Added support for .local files for the following: (if present these files override the corresponding regular config files.)
- project.local.yaml
- data.local.yaml
- envs.local.yaml
- sessions.yaml, stages.yaml, groups.yaml
- Support for empty sessions.yaml, stages.yaml and groups.yaml. Named exception raised rather than NoneType exception.
- Added explicit requirement for urllib3