场景:
Mock可以用来解除测试对象对外部服务的依赖(比如数据库,第三方接口等)
行业背景:
如果研发来负责单元测试的编写,很多时候研发人员都不编写单元测试。研发人员不编写单元测试的原因其实也是比较容易理解的,因为编写单元测试用例工作太耗时。有时候研发的经理或项目的业务方会认为单元测试用例会减缓项目的整体进度。有时候甚至整个公司层面都不认可花费大量的时间在单元测试上是合理的,尤其是在项目周期紧张和业务变动较大的项目上。因为单元测试从一定程度上来说确实增加的研发人员的编码量,同时还会增加代码的维护成本。
如果测试来负责单元测试的编写,目前的现状是测试人员需要时间理解代码,写单元测试的时间会变长。有代码修改之后,在项目的测试压力之下,有的测试人员,就选择不维护单元测试,而选择赶紧完成传统的手工测试。
目的:
为了能高效的设计出更多的测试覆盖场景
如何使用Mock
<dependencies>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>2.7.19</version>
<scope>test</scope>
</dependency>
</dependencies>