Arjuna 0.8.14
Pre-release
Pre-release
Primary changes available in this build are related to Widgets, Gui exceptions, test name representation in reports and CLI switches.
- Added arjex_internals examples project to create example code that reflects/tests internal workings of Arjuna.
- CLI changes based on community discussion
- c/consider prefix changed to i/include
- i/ignore prefix changed to e/exclude
- --enumerate-only change to --dry-run
- My.repr method is used for including test data in test name. No more of the staple 'my0' in the names.
- Fix in PyTestHooks. Still need to look for a better solution. request object is not retrievable when error happens in fixture.
- To support nested element finding across all With locators that use XPath, "." is automatically pre-fixed if not present.
- New named exceptions introduced for better information: GuiNotLoadedError, GuiLabelNotPresentError, GuiNamespaceLoadingError
- Concept of root element introduced for Widget.
- Widget takes a keyword argument 'root_element_locators' in its __init__method.
- You can specify a single locator (With object) or a list of locators.
- You can also specifiy it in corresponding GNS file with a special label: root
- If both are specified, then one passed in init overrides the GNS entry.
- If root element is specified in any of the above manner, it is used to find elements when factory methods of Widget are used (e.g. .element())
- If root element is NOT specified, automator is used as the finder.
- Test Object Space (earlier called Shared Spaces)
- my.modules_shared_space is changed to my.module.space for better code structure.
- my.space in test refers to the current test's scope.
- In fixtures, request.space refers to the scope as per the fixture scope.
- With my.space, and request.space, storing is done for scope, retrieval is from current test object up the parent chain.
- Doc links in main README.md made abolsute because for PyPi.