如何解决测试使用Spring服务的方法
我在测试Java中的方法时遇到问题(我使用jUnit 4),并且该方法用于测试对存储库的调用,如果出现错误,应该抛出异常,该方法如下:
//Method located in a Spring service and use a repository to make the query
public void updateCustomer(CustomerEntity customer) throws CustomException {
try {
getDataDao().update(customer);
} catch (Exception e) {
throw new CustomException(e.getMessage());
}
}
问题是,如何使测试用例进入catch块并引发异常?我将客户设置为空,但不起作用。
感谢您的帮助。
解决方法
您需要模拟该DAO调用并从那里抛出异常。
您将对@ Mock,@ InjectMock和@Mockito框架here有更多了解。
Mockito.when(getDataDao().update(any()))
.thenThrow(Exception.class);
,
您可以使用 mockito 框架来实现。如果您是该框架的绝对入门者,那么我建议您参考以下教程。 Mockito - Exception Handling
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。