2011-01-25 50 views
2

哪个嘲讽框架优选用于测试EJB的(特别是消息驱动Bean),我在看MockObjectseasyMockMockEJBmockito但开放。最佳模仿对象框架

我以前没有使用过嘲讽框架,对低学习曲线/入门指南非常感兴趣。

我要澄清,如果你使用EJB 3.x中使用EJB 2.

+0

可能的重复[什么是最好的模拟框架的Java?](http://stackoverflow.com/questions/22697/whats-the-best-mock-framework-for-java) – dogbane 2011-01-25 11:34:47

+1

@dogbane - 我是特意为EJB junit测试考虑 – scottyab 2011-01-25 11:37:15

回答

2

这不是一个模拟框架,但你可能想看看OpenEJB,这是一个轻量级的EJB容器,适用于单元测试等。这将节省您不得不模拟容器的接口,并且您仍然可以将接口模拟到其他组件。

+0

在手机上,试图手动执行超链接,失败。 – 2011-01-25 13:32:06

2

,则在很大程度上基于接口,所以你平时运行中的磨嘲讽框架会做得很好单元测试;代码被EJB框架使用的事实并不真正相关。

但是,EJB 2.x是一个不同的(也是丑陋的)水壶,因为它不符合任何通常的软件设计规则。你最好的选择可能是像Cactus这样的框架。

4

专门为此构建的框架是Arquillian - http://www.jboss.org/arquillian

这可让您通过JUnit测试容器内容。您可以测试单个bean或更大的集合。您可以通过简单地打包测试存档中的其他实现来提供模拟。

当使用Java EE 6(JBoss AS 6,Glassfish V3)时,您可以以嵌入模式运行容器,从而简化问题并节省运行时间开销。

虽然EJB2出了名的难题。如果可能的话,我建议你完全放弃EJB3.x,但当然这可能不适合你。