我有一个AuthenticationManager.authenticate(username,password)
在被测 SomeService 的 someMethod 中调用的方法。AuthenticationManager 被注入到 SomeService 中:
@Component
public class SomeService {
@Inject
private AuthenticationManager authenticationManager;
public void someMethod() {
authenticationManager.authenticate(username, password);
// do more stuff that I want to test
}
}
现在对于单元测试,我需要验证方法来假装它正常工作,在我的情况下什么都不做,所以我可以测试方法本身是否完成了预期的工作(根据单元测试原则在其他地方测试了身份验证,但是身份验证需要在该方法中被调用)所以我在想,我需要SomeService
使用一个模拟,当被调用AuthenticationManager
时,它只会返回并且什么都不做。authenticate()
someMethod()
我如何使用 PowerMock(或 EasyMock / Mockito,它们是 PowerMock 的一部分)来做到这一点?