首页 > 其他分享 >【单元测试】Mockito

【单元测试】Mockito

时间:2022-12-31 23:55:45浏览次数:45  
标签:Mockito RunWith mockito 单元测试 mock class Mock

POM

<dependency>
    <groupId>org.mockito</groupId>
    <artifactId>mockito-all</artifactId>
    <version>1.10.19</version>
    <scope>test</scope>
</dependency>

spring工程

spring-boot-starter-test即可,默认引用了mockito-core+junit依赖

 

方式:mock(不使用注解)

  

 

  mock 对象的方法的返回值默认都是返回类型的默认值,除非通过mock重新指定(如when)

方式:@Mock注解

在Mockito中用于创建mock对象,使用方法如下

@Mock:该对象所有的方法被置空,根据测试代码逻辑的需要使用

@InjectMocks:创建一个实例,并将@Mock(或@Spy)注解创建的mock注入到用该实例中。通常用于spring注入测试

mockito 会将 @Mock、@Spy 修饰的对象自动注入到 @InjectMocks 修饰的对象中。

  

 

 使能Mockito注解生效

方式1:@RunWith(MockitoJUnitRunner.class)

   @RunWith就是一个运行器

  @RunWith(JUnit4.class)就是指用JUnit4来运行

  @RunWith(SpringJUnit4ClassRunner.class),让测试运行于Spring测试环境

  @RunWith(Suite.class)的话就是一套测试集合

  

 

 方式2:MockitoAnnotations.initMocks

   MockitoAnnotations.initMocks(this);   // 老方式Mocks方法已Deprecated,一般放到@before方法

  

 

标签:Mockito,RunWith,mockito,单元测试,mock,class,Mock
From: https://www.cnblogs.com/clarino/p/17017607.html

相关文章

  • 【单元测试】测试替身
    http://xunitpatterns.com/Test%20Double.html  Astubhasnologic,andonlyreturnswhatyoutellittoreturn.Amockhasexpectationsaboutthewayi......
  • 【单元测试】jUnit框架
    POM配置<dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version></dependency>JavaTest类结构ClassXXXTe......
  • 【单元测试】SpringRunner执行原理
     https://zhuanlan.zhihu.com/p/571520010  SpringRunner实现Junit暴露的BlockJUnit4ClassRunner  SpringJUnit4ClassRunner实现了BlockJUnit4ClassRunner,它......
  • 【单元测试】基础理论
    https://insights.thoughtworks.cn/practical-test-pyramid/https://developer.aliyun.com/article/792515 Java编程技巧之单元测试用例编写流程https://developer.51c......
  • 基于Python语言单元测试框架unittest和pytest的区别
    1.用例编写规则:unittest:提供了testcases测试用例,testsuites测试套件,testfixtures测试固件或者夹具,testloader测试加载器,testrunner测试运行器。必须遵守以下规则:(1)测试文件......
  • JUnit + Mockito 单元测试(二)(good)
     importorg.junit.Test;importorg.mockito.Matchers;importorg.mockito.Mockito;importjava.util.List;importjava.util.Map;importstaticorg.hamcrest.CoreMatcher......
  • 通过dremio 一个单元测试了解基本查询处理过程
    dremio属于一个比较复杂的系统,官方有不少模块,官方同时也包含了一个不错的单元测试可以基本了解查询的处理从session到查询,到sql解析,关系节点转换,逻辑计划器以及物理计......
  • 使用Mockito进行springboot测试
    简述Mockito为测试创建testdouble,即测试替身。我们进行测试的时候,很多情况下我们测试的区域会依赖很多外部库,这时就需要测试替身,模拟外部库的返回值,让我们专注......
  • 什么单元测试、执行单元测试的目的、单元测试环境、单元测试的测试策略
    ​​单元测试​​,对软件在设计的最小单元中进行正确性检测的测试,将可能存在的错误在最小范围内发现并解决。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含......
  • Python单元测试报告框架PyTestReport
    文章目录开局一张图安装通过pip安装通过安装包通过源码(最新版本)使用单元测试使用样例附录​​原文链接​​如果你是Java栈的同学,那么你可能知道extentreport测试报告框架。......