Skip to content

Arjuna 0.8.14

Pre-release
Pre-release
Compare
Choose a tag to compare
@rahul-verma rahul-verma released this 19 Feb 13:32
· 710 commits to master since this 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.