如何用Mockito验证方法未被调用?
你好!我正在使用JUnit和Mockito为Java应用编写单元测试。我有一个服务,在某些条件下不应调用依赖对象的方法。例如,如果用户未授权,则不应调用sendEmail()方法。如何在测试中验证这一点?
以下是我的简化代码示例:
public class NotificationService {
private EmailService emailService;
public NotificationService(EmailService emailService) {
this.emailService = emailService;
}
public void processUser(User user) {
if (user.isActive()) {
emailService.sendEmail(user.getEmail(), "Welcome!");
}
}
}我为用户活跃的情况编写了测试——使用verify(emailService).sendEmail(...)验证sendEmail()被调用。但如何为用户不活跃的情况编写测试(例如user.isActive()返回false)?