Testing Your Message-Driven Application
summary
Implements a domain event publisher for card-granted and card-rejected flows using Spring Cloud Stream with a RabbitMQ binder, exercises unit tests with mocks, integration tests, and a test that uses MessageCollector to exercise the real serialization path, finds a Jackson payload bug, and uses Spring Cloud Contract for messaging contracts. Builds an outbox-style solution (DB-stored events + scheduled publisher) to achieve atomicity and discusses at-least-once vs at-most-once delivery; the examples run locally and reproduce the problems and fixes.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 1:15Who am I
- 2:32Meet the Developer
- 3:45Test Code
- 9:07Why MessageDriven
- 10:25Architecture
- 10:52Implementation
- 11:35Event Publisher
- 18:23Source
- 23:20Unit Test
- 24:55Message Collector
- 31:08Client ID
- 37:44EndtoEnd Test
- 38:34Review Process
- 47:49Questions
related talks
47mTesting message driven applications with Spring
51mEvent Driven with Spring
59mGame of Streams: How to Tame & Get the Most from your Messaging Platforms
01h 12mCloud Event Driven Architectures with Spring Cloud Stream 2.0
45mREST and Messaging contracts with Spring Cloud Contract
43mEvent Streams & Data Rapids: Harnessing the Full Power of Messaging Platforms.
01h 17mMessage Driven Microservices in the Cloud
17mConsumer driven development with Spring cloud contract
