聚合弹簧云流应用的单元测试

时间:2016-11-29 14:27:42

标签: spring-cloud-stream

我正在对聚合的春云流应用进行单元测试,主要方法如下:

@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();
     }
    }

1 个答案:

答案 0 :(得分:0)

我已添加https://github.com/spring-cloud/spring-cloud-stream/issues/723来跟踪此内容。

测试的应用程序需要设置为聚合 - 与main方法的方式相同。但是,在这种情况下,似乎很容易获得输入通道并发送消息。我担心这是一个阻碍者,但希望我们能尽快修复它。