Citrus (EXTENDED | 2026)

Allows users to define a sequence of expected events in a cucumber.feature file without writing Java glue code, enabling them to assert that messages A, B, and C arrived within a specific timeframe, even if they arrived out of order.

This feature enhances Citrus’s ability to test modern microservices architectures that rely heavily on event-driven messaging (e.g., Kafka, RabbitMQ) rather than synchronous HTTP requests. Feature Proposal: Asynchronous Event-Driven Validation

are you using (e.g., Kafka, RabbitMQ, ActiveMQ)? Citrus

Update the citrus-cucumber module to recognize these new step definitions.

To make this feature more useful for you, could you tell me: Allows users to define a sequence of expected

Leverage existing com.consol.citrus.kafka and com.consol.citrus.jms libraries.

Automatically detects and correlates asynchronous messages based on headers (e.g., correlation-id , message-id ) across different transports (Kafka to HTTP, JMS to Kafka). Update the citrus-cucumber module to recognize these new

Advanced "wait" actions that allow the test to pause specifically for a message, reducing brittle Thread.sleep() commands. 3. Example Gherkin Syntax (Cucumber):