【问题标题】:How to Mock send method in MessageChannel of SpringBoot in Wiremock Integration Testing如何在Wiremock集成测试中模拟SpringBoot的MessageChannel中的发送方法
【发布时间】:2021-10-11 05:28:07
【问题描述】:

我正在为我的应用程序使用 Spring Boot Java。应用程序正在使用 MessageChannel 向 Kafka 发送一些消息。例如:this.messageChannel.send(message)。

我想在集成测试中模拟这个消息通道调用,这样消息就不会发送到 Kafka。目前使用 Wiremock 进行 Spring 集成测试。

请建议我模拟 MessageChannel 发送方法的方法

【问题讨论】:

    标签: java spring-boot apache-kafka integration-testing wiremock


    【解决方案1】:

    如果您想使用 Kafka MessageChannel 进行集成测试,请使用spring-kafka-test 的嵌入式 Kafka 服务器...

    Mocks 通常不用于集成测试。也许你的意思是假货?

    在这种情况下,您需要创建自己的 implements MessageChannel 类并用您期望的行为覆盖 send 函数,然后将其传递给您所指的类的构造函数 this在你的问题中。

    或者,如果您使用 WireMock 并打算将消息send 发送到 HTTP 端点而不是 Kafka,听起来您想要 spring-integration-http

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-12-07
      • 2011-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-13
      • 1970-01-01
      相关资源
      最近更新 更多