TestContainers Kafka 清理

问题描述

我将 TestContainers 与 Kafka 一起使用,但我的测试中出现缓存。

我已经构建了 Hello World Kafka Stream 应用程序,在我的测试中,我得到了答案:

Flat Map: Hello World!
Grouping: key=null work=hello
Grouping: key=null work=world
Key=hello value=7

我的测试非常简单,我正在创建 KafkaContainer 并向输入主题发送消息,并检查输出主题

@Container
public static KafkaContainer kafka = new KafkaContainer(DockerImageName.parse("confluentinc/cp-kafka:5.4.3"));

我的问题是:如何清理所有 Kafka 数据(或所有容器数据)?我可以在两次测试之间做吗?

我相信每次运行测试时,我都需要使用全新的 Kafka 集群,而不是旧的。我使用 my test 创建了一个 GitHub 存储库。

解决方法

这不是 TestContainer 的问题。

Kafka Streams 在 %AppData%\Local\Temp\kafka-streams 上创建本地缓存