Arjuna 0.8.12
Pre-release
Pre-release
From 0.8.10 onwards, the goal was to document Arjuna use cases, make changes to the API in the interest of intuitive behavior and make any fixes/enhancements to support these.
Following are the changes which have gone in:
- Added asserter object to 'my'
- Split Example Project to represent documentation sections.
- Examples are now tracked based on transformation to @test and doc written.
- Examples:
- Core Features
- Writing First Test
- Value abstraction
- Configuration - Arjuna Options and User Defined Options
- Web UI Automation Basics
- Getting Started with WebApp
- GuiElement - Selenium By's Equivalent, Arjuna Extensions, Basic Interactions
- Creating a Self-Contained App Class
- GuiMultiElement
- DropDown and RadioGroup
- GUI abstraction
- Gui Namespace
- Creating an App Class
- Gui Loading Logic
- App Model
- App-Page Object Model
- App-Page-Widget Object Model
- Core Features
- Added non-coding documentation:
- Project Structure
- CLI Changes
- cm/im switches removed based on new test structure.
- cf/if changed to ct/it (--consider-tests, --ignore-tests).
- run-pickers changed to run-selected.
- Support for static RunID when --static-rid switch is passed. Useful during script development. Default is dynamic timestamped runid.
- Simplification of With
- class_name, class_names, compound_class -> With.classes
- css_selector -> selector
- tag_name -> tag
- link_text -> flink (Full text of link)
- link_ptext -> link (Default match in Arjuna is Partial)
- javascript -> js
- attr_value -> fattr (Full attribute)
- attr_pvalue -> attr (Default match in Arjuna is Partial)
- meta -> label
- With.attr* now take two arguments and simple strings rather than [attr][value] string.
- WebApp Interface Improvements
- delegates all calls which it does not contain to its 'ui' obj. It simplifies the App abstraction code in tests.
- title is a direct inquirable attribute
- go_to_url is a direct call.
- Page interace
- go_to_url is a direct call.
- Name and importing changes
- AnyRefValue changed to Value. It is now a direct arjuna import.
- DefaultTestContext -> RunContext
- guiauto_max_wait property method -> guiauto_max_wait
- ns_dir -> gns_dir
- def_file_name -> gns_file_name
- test.my and Gui have Arjuna's asserter object. AsserterMixin moved to asserter module. Added 'fail', 'assert_equal', 'assert_not_equal', 'assert_true', 'assert_false methods to Asserter. More assertions to be added.
- Basic proof of concept done w.r.t. creating session level fixtures outside of conftest. Will build on this in upcoming versions.
- Fix for GNS for attr based identification.
- Directory and project files related changes:
- arjuna_launcher.py moved to scripts directory and updated to support new structure.
- archives directory is not created now.
- Cleanup of arjuna central conf and description files.
- pytest.ini now present inside arjuna deployment.
- conftest.py now resides inside tests directory.
- Current working directory is changed to project directory before pytest is launched.
- GuiConditions, GuiReady condition and GuiNotLoaded error implemented. Arjuna has a complete Gui loading mechanism which triggers automatically for a Gui.