我有一些微服务可以操作json对象,并使用kafka作为代理(数据pepelines实现…)。
service1 consume message 1 => transform it to message 2 => publish message 2
Service2 consume message 2 => transform it to message 3 => publish message 3
Service3 consume message 3 => transform it to message 4 => publish message 4
生成的消息具有序列化键和json值。
在我的用例中,这些键确保了消息的唯一性,还传输了一些有用的信息。
我试着用zerocode测试消息值。
遵循zerocode文档,我可以在属性中指定键和值序列化程序。
key.serializer=org.apache.kafka.common.serialization.StringSerializer
value.serializer=org.apache.kafka.common.serialization.StringSerializer
序列化键如下所示:
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class Key {
private String subject;
private String source;
private int num;
private int tot;
}
我不确定这是否有效,因为密钥不是json而是序列化的pojo:
{
"name": "consume_step",
"url": "kafka-topic:demo-json1",
"operation": "consume",
"request": {
"consumerLocalConfigs": {
"recordType": "JSON",
"commitSync": true,
"showRecordsConsumed": true,
"maxNoOfRetryPollsOrTimeouts": 3
}
},
"assertions": {
"size": 1,
"records": [
{
"key" : {
"num" : "1234"
},
"value": {
"name": "Nicola"
}
}
]
}
}
我需要Assert消息1 2 3 4值。每个Assert将取决于键属性-如何Assert自定义序列化键并将其用作Assert值的筛选器?
-这个用例可以用一个场景和4个步骤来完成吗?
暂无答案!
目前还没有任何答案,快来回答吧!