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 and JGivenStageAutoProxyCreator 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 the jgiven-android-test project.

    ๐Ÿ‘€ Also see #258

    Special thanks to orginx

    ๐Ÿ›  Fixed Issues

    • ๐Ÿ‘ Spring Integration: Nested Steps are now supported when using Spring #259