JGiven v0.14.0 Release Notes
-
Switch from cglib to ByteBuddy
๐ The internal JGiven interception mechanism was changed to use ByteBuddy instead of cglib. The main reason for this change is support for Android (see below). From a users perspective, JGiven should behave as before.
Backwards Incompatible Changes
Spring Integration
In order to fix issue #259 the Spring integration was largely rewritten. If you only had used the
@EnableJGiven
and@JGivenStage
annotations, nothing should change. ๐ง If you had a custom Spring configuration for JGiven you have to change the following:- ๐ The classes
SpringStepMethodInterceptor
andJGivenStageAutoProxyCreator
do not exist anymore, you have to remove all references - ๐ง As a replacement the new class
JGivenBeanFactoryPostProcessor
exists now. You have to register this bean in your Spring configuration
๐ New Features
- ๐ Experimental support for JUnit 5 has been added #277
- ๐ท Tags with the same name, but different packages are now correctly distinguished #242 (thanks to ahus1)
- Scenario states can be marked as required to make scenarios fail quickly and with a clear message if the state hasn't been provided #255 (thanks to Airblader)
- โ Added prefined Spanish JGiven classes for writing JGiven Scenarios in Spanish #284 (thanks to elenagarcia5)
๐ Experimental JUnit 5 Support
JGiven can now be used together with JUnit 5, by using the
JGivenExtension
. Refer to the user guide for additional details. #277๐ Experimental Android Support
โ There is a new experimental module called
jgiven-android
, which enables JGiven support for tests executed on the device or simulator. โ This makes it possible to combine JGiven with Espresso tests and even integrate screenshots in the JGiven report. โ For details of how to setup and use the Android support have a look at thejgiven-android-test
project.๐ Also see #258
Special thanks to orginx
๐ Fixed Issues
- ๐ Spring Integration: Nested Steps are now supported when using Spring #259
- ๐ The classes