我正在对聚合的春云流应用进行单元测试,主要方法如下:
@SpringBootApplication
public class MyApplication {
public static void main(String[] args) {
new AggregateApplicationBuilder(MyApplication .class, args)
.from(MyProcessor.class)
.via(MyFilterProcessor.class)
.run();
}
}
在单元测试中,我通过处理器发送消息,如下所示,但仅 MyProcessor
被调用。如果我通过数据流服务器部署这个聚合应用程序,一切都按预期工作。
请告知
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest( classes = {
MyApplication .class,
})
@DirtiesContext
public class AggTest{
@Autowired
private Processor processor;
@Autowired
protected MessageCollector messageCollector;
@Test
public void testMethod(){
processor.input().send(message);
messageCollector.forChannel(processor.output()).poll();
}
}
答案 0 :(得分:0)
我已添加https://github.com/spring-cloud/spring-cloud-stream/issues/723来跟踪此内容。
测试的应用程序需要设置为聚合 - 与main
方法的方式相同。但是,在这种情况下,似乎很容易获得输入通道并发送消息。我担心这是一个阻碍者,但希望我们能尽快修复它。