我正在使用一些遗留代码,我需要测试一些昂贵的服务被调用(它使网络调用,发送电子邮件等)。在编译时嘲笑
通过使用的框架(jboss seam 2),我可以注入一个假的服务而不是原来的服务。看到这个问题:Mock @org.jboss.seam.annotations.in behaviour for unittest
我现在想让我的假对象成为一个更聪明的模拟来断言它是否已经被调用,等等。我希望它是Mockito或Easymock或其他东西模拟。但是,在测试中构建模拟的经典方法,然后注入它,由于接缝2和接缝测试处理注射的方式不起作用。请参阅上面的链接。
问题:有没有办法让我的模拟扩展或注释为了成为一个Mockito或模拟?我如何在测试中获得对它的引用?
我同意,但我已经尝试过这种方法,注射没有工作。链接的问题/答案基于接缝参考。我会再试一次您的建议,也许我错过了一些小东西:) – dcernahoschi 2012-02-07 21:01:41
这样的事情怎么会不起作用:'ApplicationBean mockApplicationBean = mock(ApplicationBean.class); SomeBean someBean = new SomeBean(); someBean.setApplicationBean(mockApplicationBean);'这是普通的Java。如果它不起作用,那么制定者有一个错误。这种方法完全没有使用Seam。 – 2012-02-07 21:07:22
它似乎工作,没有例外,但它使用正常的类而不是模拟。 – dcernahoschi 2012-02-07 21:12:40