我是新来的Mockito,我已经开始学习它。但是我有一些问题。为什么我们需要使用Mockito?据我所知,它用于模拟(创建虚拟对象),并在实际运行代码之前编写测试用例。但是,如果我想测试我已经实现的代码来检查它们是否正常工作呢?我该如何使用Mockito进行测试?
例如,我有CRUD方法,我想通过实际使用我的Create方法在数据库中插入数据来测试Create是否正常工作,类似于其他方法。我们可以用Mockito实现它吗?如果没有,那么我是否需要在不使用Mockito的情况下为它们编写不同的测试用例?
Mock用于您正在使用的每个类或服务。被测试的类不应该被mock 。假设您正在连接一个由您的工程团队之一构建的远程服务,并且您不熟悉其内部功能,但您知道它返回的请求和响应。在这种情况下,您可以创建该对象的Mock,并在不同情况下使用一组响应返回来定义它。每种情况都应该有自己不同的测试,对于每种响应,您应该分别检查(您正在处理的)代码的反应。
另一个很好的例子是创建限制检查。让我们考虑在某些情况下可能抛出的异常。你可以模拟抛出异常的对象,这很简单(如果你使用Mock,大约2-3行测试代码),你可以检查你写的代码如何对该异常做出反应。如果没有Mock,抛出异常可能是非常复杂的事情,如果您不熟悉小细节,则不太容易使用。当然,Mock使你能够专注于你正在检查的主要功能,因为它使检查时间非常非常短。当上市时间是一件很重要的事情时,这是件好事。