0

我在 Junits 使用 Embedded Kafka Broker,用于测试我推送到主题的值。

我收到以下错误日志。

[ERROR]   KafkaConsumerTest>KafkaConsumerTests.shouldNotRetry4XXResponse:256 

expected: <LocKey(orgId=ORG101, locationType=STORE, locationId=S101)> 

but was: <{"orgId":"ORG101","locationType":"STORE","locationId":"S101"}>

我正在比较键键

assertEquals(getKey(), record.getKey());

不知何故,花括号被添加到从 Kafka接收的记录中

任何线索如何解决这个问题,谢谢!

4

2 回答 2

0

我已经解决了这个问题.. 发布到 Kafka 的数据之前被转换为 json,然后发布。

这就是为什么要附加花括号

抽象是一种罪恶!

于 2020-07-10T18:29:04.367 回答
0

如果您将整个单元测试发布给我们以查看断言之前到底发生了什么,我会更喜欢,但问题可能出在您为 Kafka 库定义的序列化程序中。似乎您为消息的键定义了一个字符串序列化程序,但您正试图将其与一个对象进行比较。无论如何,请检查您的序列化程序

于 2020-07-10T17:15:35.043 回答