TestContainers Kafka 清理

Posted

技术标签:

【中文标题】TestContainers Kafka 清理【英文标题】:TestContainers Kafka cleanup 【发布时间】:2021-07-14 18:53:13 【问题描述】:

我正在将 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 存储库。

【问题讨论】:

【参考方案1】:

这不是 TestContainer 的问题。

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

【讨论】:

以上是关于TestContainers Kafka 清理的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 testcontainers 和 spring-kafka 准备测试

如何在 testcontainers kafka 映像中执行 kafka-configs 命令

spring boot kafka 在将 testcontainers 与 kafka、zookeeper、模式注册表一起使用时因“代理可能不可用”而失败

TestContainers 中的 KafkaContainer 挂起直到超时,并显示“等待容器端口打开超时”

在 Kubernetes 中进行 Spring Boot 集成测试的 Testcontainers 的选项或替代方案?

转 kafka 清理数据