相关疑难解决方法(0)

如何在Apache Camel中对生产路线进行单元测试?

假设我在单独的RouteBuilder类中创建了我的路由.看起来像:

  • 从JMS队列中获取消息
  • 做一些转型,验证等
  • 取决于验证结果转发到特定的JMS队列并在DB中保存

我想在没有JMS代理和没有DB的情况下对这条路线进行单元测试.我知道我可以模拟我的处理器实现,但这还不够.我不想改变这条路线(假设我在jar文件中得到了这个类).据我所知,从Camel in Action(第6.2.6节)中,为了能够使用端点和其他东西的模拟,我需要更改我的路由端点定义(在本书的示例中,这是"mina:tcp:/"的更改/ miranda"to"mock:miranda"etc).

是否可以在不改变路径定义的情况下完全隔离测试流量?如果我将RouteBuilder作为一个单独的类,我是否被迫以某种方式"复制"路由定义并手动更改它?是不是测试了错误的东西?

我对Camel很新,对我而言,能够在发布路线时进行隔离单元测试真的很酷.只是为了能够改变一些东西,运行小测试,观察结果等等.

integration junit routes mocking apache-camel

20
推荐指数
2
解决办法
2万
查看次数

标签 统计

apache-camel ×1

integration ×1

junit ×1

mocking ×1

routes ×1