Arjuna architecture is changed. Rather than launching pytest.main(), it acts as pytest plugin. Support for custom HTTP proxy is added. HTTP Externalization support is in progress. Message part of HTTP abstraction model is decently covered with more features on the way. Many example tests have been added in arjex. Following is a more complete list:
- Arjuna acts as a pytest plugin for the purpose of test execution.
- CLI options are significantly updated. Old usage is deprecated. Refer the new docs.
- Added !join construct support in YAML files.
- Upgraded pytest and selenium versions.
- Arjuna now needs Python 3.8+
- Arjuna header is shown when any command is executed.
- Updated copyright info.
- Added advanced assertions:
- approximate equality comparison: assert_approx_equal and assert_approx_not_equal
- asserting raised exceptions: assert_exceptions (callable or as context manager). Supports regex match for string repr of exception.
- --project accepts project path relative to current working directory. It also accepts '.'
- Internal improvements to cater to pytest's auto-disocvery mehchanism in situation of multiple projects.
- Debug mode in VSCode works. Arjuna selection uses a uniform way of determining qual name for all situations.
- Fixed new Arjuna test project creation
- Changed laxml dependency to lxml>=4.4.1
- A custom Http Proxy can be set for GUI Automation and HTTP Automation.
- Arjuna options - HTTP_PROXY_ENABLED, HTTP_PROXY_HOST, HTTP_PROXY_PORT introduced.
- Proxy is disabled by default.
- Stefan's mix for size assertion exception message merged.
- Fix for max_wait in GNS
- Fix in proxy setting for Selenium
- Fix in Json.from_dict
- HttpAuto
- strict argument has been deprecated in HTTP method calls.
- Support for externalization of HTTP msg (Basic Support. More features will unfold in upcoming builds.)
- remove_none default has been changed to True for Data Entity's .as_dict() method.
- Added support for data_entity as a valid content without converting using as_dict().
- Added support for Parsed cookie and HttpCookie Arjuna class.
- Support for checking secure and HttpOnly flags.
- HttpRequest.text returns Arjuna's Text object. For raw text, use .content
- Support for has/match sections for basic existence and equality assertion on content.
- Support for store and validate sections in message for advanced assertions beyond has (exists) and match (equality). Works for headers as well.
- JsonDict can be compared with YamlDict or DataEntity. JsonList can be compared with YamlList.