如何使用Java DSL测试Camel JMS路由

时间:2014-08-25 22:44:28

标签: unit-testing jms apache-camel activemq

我有一个骆驼Java DSL路由,它被定义为从队列中获取消息并将它们路由到Java处理器。该路由定义了一些异常处理,它查找特定类型的异常,并在处理器抛出该异常时将消息放回队列。我已经知道这条路线确实有效,但我想对路线进行适当的单元测试。

有人可以发布一个简单的基于Java DSL的示例,说明如何执行此操作吗?我将来自各个帖子的建议拼凑在一起,或许我应该使用camel占位符功能来替换我的activemq:队列端点用seda或mock或者direct或者什么(不确定)。

也许我应该使用一个拦截器拦截前往处理器的消息,并让拦截器的处理器抛出我的异常。我喜欢我的单元测试发送消息,让我的拦截器抛出一个异常,并期望消息最终返回到我的模拟队列或其他影响。但我不太确定如何把它们放在一起。 Java DSL的例子好吗?

由于

1 个答案:

答案 0 :(得分:4)

作为Apache Camel本身的单元测试的一部分,有Java DSL示例,尽管它们有很多,所以可能需要一些时间才能找到合适的示例。

或许更好的是看看骆驼书中的例子,例如Camel in Action,第6章:

骆驼收件人预订: