使用EJB模拟进行Arqullian JSF测试

时间:2015-12-10 00:49:09

标签: java-ee jboss-arquillian arquillian-drone

我试图编写一些测试来检查GUI是否表现正常。我将EAR项目划分为带有EJB(业务逻辑)和WAR(通常为GUI)的jar。到目前为止,我已经编写了几个测试,业务逻辑按预期工作。然而,我正在努力进行功能测试的Arquillian测试。

例如: 我有一个登录表单,Session Scoped bean负责使用给定的用户名和密码向EJB发送调用。 EJB执行整个逻辑 - 验证,数据库访问等,然后返回User对象。使用CDI注入EJB。

我想做的是模拟注入的EJB,因此我可以简单地返回null或new User而无需数据库调用和处理。我知道我可以简单地编写一个新的模拟ejb类并将其添加到ShrinkWrap部署而不是真正的实现,但我发现使用Mockito是一个更好的解决方案。

我试图通过@Mock注释来模拟它,然后在托管bean上使用@InjectMocks,但这并没有任何好处。我确实在注入模拟的情况下引用了托管bean,但这不是网站调用的对象。我相信它是因为功能测试我作为客户端运行测试,而模拟应该在服务器上完成......

这样做的正确方法是什么?

0 个答案:

没有答案