骆驼路线测试

时间:2013-01-08 11:39:18

标签: unit-testing apache-camel

我需要使用(版本1.6)

为某些驼峰路线编写单元测试用例

有人可以建议是否可以在路线内模拟组件(处理器和idempotentConsumer)?如果是,请建议方法。

以下是路线片段

    from("direct:someuri").process(someClassObject).
    idempotentConsumer(header("someHeadername"),socratesMessageIdRepository(bean(JpaTemplate.class)))./*process(exceptionProcessor)*/
    to(someQueues); 

1 个答案:

答案 0 :(得分:3)

Camel有一个很好的测试和模拟框架。

关于这个主题有很多主题,我建议你开始在这里阅读:http://camel.apache.org/mockhttp://camel.apache.org/testing.html

请注意,Camel源代码中包含大量测试用例,您可以通过这些测试用例来学习如何测试/模拟。防爆。 http://svn.apache.org/repos/asf/camel/trunk/camel-core/src/test/java/org/apache/camel/processor/IdempotentConsumerTest.java

如果您只想模拟处理器,则可以使用bean组件代替并通过引用调用它。

from("foo").bean("myBean").to("bar);

如果你使用spring,你可以简单地注入一个模拟版本的处理器,并将其命名为myBean。即使没有spring,Camel也有一个注册表,你可以绑定你的模拟版本,而不是真正的版本。