Version 5.1.0
"Life is short and information endless: nobody has time for everything."
Aldous Huxley
This Neodymium update mostly centers about improving our reporting to give the results reviewer a better overview and a quicker way to identify issues, bugs or needed changes in the performed tests.
Also since accessibility and WCAG is a huge topic due to upcoming changes in international law, we now offer a simple way to include Google Lighthouse Reports into test automation.
Content
WCAG Automation
-
Feature: Create Google Lighthouse Reports directly from test automation runs
- include Lighthouse Reporting as part of the normal user journey with a single method call
- validate on lighthouse scores and specific audits
Reporting improvements
- Feature: Improved Screenshots
- To better see what went wrong in a test cases we now use full page screenshots. Also, a highlighting of the viewport and the last used element can be enabled in the configuration.
- Feature: Test Data Overview on each Test Case
- To have a better overview on which data was used we now add an overview in a JSON format to each test case
- Feature: JSON Assertions
- In cases where big chunks of JSON needs to validated giving a meaningful error message can be difficult, to tackle this, we added a simple way to add a JSON compare view between an expected and actual JSON to our reports
- Improvement: Enhanced Environment Info. Allure offers an environment overview, which needs to be handled by altering a file. To utilize this feature better, Neodymium now offers two new features
- Custom Values in environment info:
- By setting properties, custom values can be added directly into the environment section of a report. In this way, reports with different test profiles or target systems can be easily differentiated.
- The browsers used in a test run are now collected and also displayed in the environment section for a better overview
- Custom Values in environment info:
- Improvement: Current URL per Step
- To more easily reproduce failed testcases manually a clickable link for each new URL is now displayed in the report.
- Improvement: Reduced displayed information for debug purposes
- We removed some INFO sections from the default report, which can be reenabled for debug purposes
Other Changes
-
Improvement: In-Page PopupBlocker
- In cases where you face nondeterministic PopUps which affects your tests run, we added an automatic PopUpBlocker.
-
Feature: Seperate Sessions for Setup and Cleanup
- It is now possible to run the
@BeforeEach
and@AfterEach
in separate, clean browser sessions.
- It is now possible to run the
-
Improvement: Neodymium properties can now be overwritten by system properties and environmental variables.
- This allows pipeline runs to be configured independently of the state of the repository
-
Improvement: URL Validation
- To prevent a change of system due to misconfigured links on a test system, we can now add a validation on the main URL. If the test tries to open a link, which is not allowed, the test will fail instantly to prevent any harm which could be done by accessing the wrong system (e.g. placing orders or deleting data on a live website).
- There is an exclude list and an include list. If the include list is set, only links which matches the given patterns will be allowed. If there's no include list set, any URL matching the patterns from the exclude list will result in a failed test.
-
Improvement: Support Passing Command Line Arguments To Driver
- We now allow to commandline arguments (like reduce/increase webdriver logs, redirect them to separate file, change port etc.) to be passed via our configuration.
-
fixed bug #305 - we improved the used mp4 codec of our recordings to cover more systems and more video players by default
-
fixed bug #303 - video recording duration and frame rate is now closer to the expectations
-
fixed bug #292 - selenium manager will only be downloaded if needed
-
fixed bug #275 - fixed bug for concurrent file access when several JVMs access the environmental information file from allure
Updates
- Selenide to 7.6.0
- Surefire to 3.5.2
- Allure to 2.29.0
- Cucumber to 7.20.1
- log4j to 2.24.2
- JUnit to 4.13.2
- JUnit Jupiter to 5.11.3
- SnakeYaml to 2.3
- apache.commons-csv to 1.12.0
- apache.commons-text to 1.12.0
- apache.commons-lang3 to 3.17.0
- slf4j-api to 2.0.16
- commons-io to 2.18.0
- gson to 2.11.0