我们正在使用 Fuse ESB(Camel、OSGi、蓝图)来处理一些峰值以交付一些组件。我们的 EA 有一个强加的架构,即:REST 控制器使用路由来调用 CXF WS。这会将本地 java 类作为服务调用,例如,执行 CRUD 操作。这些使用启用 JPA 的 DAO/实体。一切似乎都在设计而不是现实世界中有点学术,但那是另一回事。
问题是关于测试的。通常我实际上会使用 H2 来测试这个服务层来提供 DB,将 DAO、entityManager 等与 spring 连接在一起(我知道有些人不会这样做,但我会这样做,请耐心等待)。但我们将使用蓝图进行熔断。如何对这一层进行单元测试?让我的测试子类 CamelBlueprintTestSupport 不起作用,这需要一条路线。不能使用 SpringJUnit4ClassRunner (尽管目前确实可以使用它)因为它与弹簧连接,当在容器中运行时,我们将与蓝图连接。
那么我们如何对此进行单元测试呢?如何在基于蓝图的单元测试中实例化这组类?我们可以吗?