Skip to content

Releases: TNG/JGiven

v0.15.2

08 Oct 11:41
Compare
Choose a tag to compare

Fixed Issues

  • Fixed JUnit 5.0.0 compilation issue due to API changes #326
  • Fixed a NullPointerException in the PojoFormatter when passed object is null #318

INFO: JGiven HTML App

The JGiven HTML5 App is extracted into its own project.
This allows us to develop the HTML5 App independently of JGiven as it is also used by jsGiven, for example. For users of JGiven nothing changes as the HTML5 App is delivered together with JGiven.

v0.15.1

07 May 17:28
Compare
Choose a tag to compare

Fixed Issues

  • Fixed a NullPointerException when using @Table(includeNullColumns = true) and columns with null values #315

v0.15.0

28 Apr 07:52
Compare
Choose a tag to compare

New Features

  • Thumbnail preview for image attachments added #299
  • The ReportGenerator now uses the HTML5 report as default, doesn't silently misinterprets wrong arguments and flags and offers suggestions #299
  • Formatting POJOs has been greatly improved, by allowing to specify custom formatters for fields #297 (thanks to dgrandemange)
  • @ExtendedDescription supports parameter place holders now #283
  • The HTML App has been extracted into a separate project and has been refactored internally. The functionality should not have been changed. #287

Fixed Issues

  • Upgraded to ByteBuddy 1.6.x to fix backwards-incompatibility issues when JGiven is used with Mockito 2.7.19 #309
  • Introduced CaseAs annotation to replace the CaseDescription annotation #301
  • Removed ambiguity between parsing of As, CaseAs and ExtendedDescription. Argument enumeration starts from 1, internal count of how often placeholders are used, see docs to As for every feature. All argument reference types are interoperable #301

v0.14.1

11 Feb 12:40
Compare
Choose a tag to compare

Fixed Issues

  • Performance: Caching the classes generated with ByteBuddy introduced with v0.14.0 to decrease the memory consumption and performance of creating stage classes #294
  • OSGi: Using class loader of the stage class instead of the current thread when creating classes with ByteBuddy #302
  • HTML Report: Long exception messages of failed Scenarios are now wrapped #292

v0.14.0

06 Jan 11:17
Compare
Choose a tag to compare

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

  • 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

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

v0.14.0-RC3

29 Dec 23:07
Compare
Choose a tag to compare
v0.14.0-RC3 Pre-release
Pre-release

Fixes broken pom.xml files

Release 0.14.0-RC2 had broken pom.xml files deployed to Maven Central. This is fixed with this release.

v0.14.0-RC2

29 Dec 12:29
Compare
Choose a tag to compare
v0.14.0-RC2 Pre-release
Pre-release

Important changes compared to 0.14.0-RC1

Note: this release contains broken pom.xml files. Please use release 0.14.0-RC3

v0.13.1

25 Dec 18:39
Compare
Choose a tag to compare

Bug Fixes

  • Maven Plugin: The default values of the Maven plugin work again #276

v0.14.0-RC1

24 Dec 15:14
Compare
Choose a tag to compare
v0.14.0-RC1 Pre-release
Pre-release

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

  • 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

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

v0.13.0

16 Dec 19:40
Compare
Choose a tag to compare

Backwards Incompatible Changes

In order to fix issue #239, a backwards incompatible change had to be done:

  • The ScenarioBase class is now abstract, because the method getScenario() was made abstract. Thus, subclasses have to implement the getScenario() method.
    As, in general, you should have inherited either from ScenarioTest or SimpleScenarioTest the change should most likely not effect you.
    If you have directly inherited from ScenarioBase, have a look at the ScenarioTest class of how to implement the getScenario() method.

New Features

  • Custom annotations can now also be defined for the @Table annotation #235
  • In addition to text and images, all kinds of media types can now be used as attachments #228 (thanks to ahus1)

Small Improvements

  • Assertion errors shown in the HTML report respect line breaks now. #234

Bug Fixes

  • TestNG: executing test methods in parallel is now possible. #239
  • Correctly handle nested steps in parametrized scenarios. #248
  • Correctly report pending status of parametrized scenarios. #200
  • Spring: added support for executing Spring tests with the Spring JUnit rules instead of the Spring test runner. #250