我使用Spring框架的測試使用JUnit一起。我有我使用的測試案例Spring上下文文件:的Mockito NotAMockException當它顯然是
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration({ "classpath:spring/restTestContext.xml",
"classpath:spring/webserviceContext.xml" })
@PrepareForTest(User.class)
public class RestTestsIT {
// This is a mock
@Autowired private AWSMailService mailService;
...
}
在我創造型AWSMailService的一個bean(實際上是一個模擬)的restTestContext.xml:
<bean id="mailService" name="mailService" class="org.mockito.Mockito" factory-method="mock">
<constructor-arg value="com.acme.utils.email.AWSMailService" />
</bean>
在測試我想驗證sendEmail()方法被調用的MailService的模擬,但我得到一個NotAMockException雖然在對象上調用toString()告訴我,這是一個模擬:
public void testEmailSent() {
...
// Results in "Mock for AWSMailService, hashCode: 31777764"
System.out.println(mailService.toString());
// Results in NotAMockException
verify(mailService).sendEmail(any(String.class), ...);
}
有沒有人有任何想法可能導致這種情況?
感謝
固定它:)顯然,我必須要耐心等待8小時,然後我可以回答我的問題,所以我會更新明天:( – 2012-04-25 13:22:18