Skip to content

Consider support for Cucumber messages #1285

@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 consuming Cucumber Messages.

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. This could be used as a first step, where you support both json -> report and messages -> json -> report.
  • To test your implementation of messages you can use the Compatibility Kit. It consists of a feature file, reference step definitions and expected output. You can use the expected output files for approval testing.
  • 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

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions