Neodymium v5.0.0
Version 5.0.0
The wait is over! Today we finally get back on the major release train and present you the new Neodymium 5.0.0. Back to state of the art technologies with Selenium 7 and JUnit 5 we bring a bunch of new functionalities, improvements and new features.
Did you ever want to follow the whole journey of your automated user through the site? Well we now have a video recording of your testcases added. We improved the selection of tests to run as well as the way we can configure the browser and a lot of other smaller or bigger things to help you with your automation journey.
Please see below for what you can find inside the big box of updated code.
Content
-
Update: Selenium 4/Selenide 7
-
Feature: Support JUnit5
- see here for changes compared to JUnit4
-
Feature: Testrecording supported
- saved as video or gif, for further information check the documentation
-
Feature: Browser preferences can be configured via properties
- Global browser settings like the home page, alerts permission, default folders, etc. can now be set in the properties files of the Neodymium browser properties using the keyword .preferences (Currently, these preferences are only supported by Chrome and Firefox.)
-
Improvement: Filter test execution
- Now it is possible to use regex for class name, method name and data set id to filter testcase execution
-
Improvement: Configure standard download folder
- Only for Chrome & Firefox
-
Improvement: Locale Check
- checks for given locale matching a given list similar to Neodymium.isSite(String... sites)
-
Improvement: @WIP- Annotation
- You are able to run a single test, a nice way while implementing new stuff
-
Improvement: @RandomDataSet annotation
- Allows to run tests with certain amount of random data sets, given from defined test data list
-
Improvement: @DataItem annotation
- Used to instantiate object with values stemming from test data
-
Improvement: Waiting functions optionalWaitUntilCondition & optionalWaitWhileCondition
- Waits until an optional element matches a condition and returns false if the element does not match the given condition or cannot be found in given time.
-
Improvement : Catching StaleElementReferenceException for SelenideAddons.$safe
-
Improvement: Logging with Log4j as standard removed
- If you want to use Logging, you can now integrate every library you want to use. For further Information look up how to setup here
-
Improvement: Timing settings in long-format
- Because it is common standard
-
Deprecated: Opera and PhantomJS driver no longer supported
- removed due to Selenium 4 update, which no longer supports these driver
-
Deprecated: Removed visual assertions
- It never was perfect and we closed the beta version, working on a better solution
Updates:
- Allure 2.26.0
- Apache commons-csv 1.10.0
- Apache commons-lang3 3.14.0
- Apache commons-text 1.11.0
- Cucumber 6.9.0
- JUnit 4.13.1
- JUnit 5.8.0
- log4j 2.23.1
- Maven Compiler 17
- Selenide 7.2.0
- slf4j-api 2.0.12
- Snakeyaml 2.2
- Surefire 3.0.0.
Required Adaption
Since this a big update with several major changes we created an article about the necessary steps to migrate to Neodymium version 5 here