Akka Streams Kafka - 针对消费者的单元测试

时间:2017-10-17 16:18:58

标签: scala apache-kafka akka akka-stream reactive-kafka

我试图通过设置Kafka服务器并使用生产者发送消息来本地测试我的代码,但我想知道是否有一种方法可以为这段代码编写单元测试(测试是否消费者收到的消息是正确的。)

val consumerSettings = ConsumerSettings(system, 
  new ByteArrayDeserializer, new StringDeserializer)
  .withBootstrapServers("localhost:9092")
  .withGroupId("group1")
  .withProperty(ConsumerConfig.AUTO_OFFSET_RESET_CONFIG, "earliest")

val done = Consumer.committableSource(consumerSettings, 
  Subscriptions.topics("topic1"))
  .map { msg =>
    msg.committableOffset.commitScaladsl()
  }
  .runWith(Sink.ignore)

1 个答案:

答案 0 :(得分:1)

您可以使用以下工具测试代码:

Akka Streams Kafka项目在其自己的测试中使用上述内容。看看IntegrationSpec,您可以根据自己的需要进行调整。