小编Lar*_*men的帖子

如何使用接收器和 @StreamListener 编写测试 Junit 消息传递测试

我有一个带有 kafka 绑定的 spring-cloud-stream 应用程序。我想创建一个测试 Junit。

\n

我的类定义如下:-

\n
@EnableBinding(Sink.class)\n@Slf4j\npublic class Messaging {\n\n    @Autowired\n    private RestTemplate restTemplate;\n\n    @Value("${messaging}")\n    private String url;\n\n    @Value("${messaging.prefix}")\n    private String messaging;\n    \n    @StreamListener(Sink.INPUT) \n    public void handle(Message<String> request) {\n        log.info("Topic name ==> %s :", request.getPayload());\n        try {   \n            String jsonString = request.getPayload().replace("\\\\", "").replace("\\"{", "{").replace("}\\"", "}");\n            JsonObject jsonObject = (JsonObject)jsonParser.parse(request.getPayload());\n            String urlRequest =url.concat(jsonObject.get("targetClass").getAsString()).concat(messaging);\n            HttpEntity<Object> entity = new HttpEntity<Object>(jsonString, getHeaderMap(request.getHeaders()));\n            ResponseEntity<String> response = restTemplate.postForEntity(urlRequest, entity, String.class);\n\n        \n        } catch (ValidationException validationException) {\n            log.error("Error de validaci\xc3\xb3n: {}", validationException.getMessage());\n        } …
Run Code Online (Sandbox Code Playgroud)

spring-cloud-stream

5
推荐指数
1
解决办法
3027
查看次数

标签 统计

spring-cloud-stream ×1