Skip to content

Consider producing Cucumber Messages #2724

@mpkorstanje

Description

@mpkorstanje

At Cucumber we have decided to put the Cucumber JSON report format in maintenance mode and not make any more updates to it.

The next evolution of the format will be Cucumber Messages. The message format provides more fidelity in general and solves several problems with the old JSON format. You can read more about those in the projects readme. Aside from Cucumber the format is also implemented by ReqnRoll, PyTestBDD and Behat so I hope we can create a language agnostic ecosystem and benefit from network effects.

As such, consider producing Cucumber Messages in Karate.

Notes:

  • I don't intend to remove the json format from Cucumber JVM for the foreseeable future.
  • The Cucumber JSON Formatter can be used to create the legacy json report using messages.
  • To test your implementation of messages you can use the Compatibility Kit. It consists of a feature file, reference step definitions and expected output. Testing against it will require writing some scaffolding. For an example see CompatibilityTest. Though it could be much improved.
  • For the Java implementation of Cucumber messages there are a few breaking changes in the pipeline including setting the baseline to Java 17. You may want to wait with an implementation until those changes land. But it shouldn't be relevant for consideration.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions