Looks like Kafka provides a testing framework for the client and streams that does not require starting a broker. It is based on the following "test" modules:
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-streams</artifactId>
<classifier>test</classifier>
</dependency>
<dependency>
<groupId>org.apache.kafka</groupId>
<artifactId>kafka-clients</artifactId>
<classifier>test</classifier>
</dependency>
as well as ProcessorTopologyTestDriver. We need to research that and see if we can provide either a test module or a recipe to use Kafka API for testing, integrating the modules above with BQTestFactory.
There are also third-party Scala "embedded Kafka" libraries. Not sure how applicable they are for testing in Java.
Looks like Kafka provides a testing framework for the client and streams that does not require starting a broker. It is based on the following "test" modules:
as well as
ProcessorTopologyTestDriver. We need to research that and see if we can provide either a test module or a recipe to use Kafka API for testing, integrating the modules above withBQTestFactory.There are also third-party Scala "embedded Kafka" libraries. Not sure how applicable they are for testing in Java.