junit+mockito单元测试基本用法.pdf

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

junit+mockito基本⽤法

准备⼯作

我们采⽤的测试⼯具是JUnit+Mockito。如果使⽤SpringBoot的话,就不需要准备任何的环境和

依赖的包。因为SpringBoot集成了Mockito,在创建项⽬时SpringBoot也会⾃动引⼊starter-test

模块。

1dependeny

2groupIdorg.springframework.boot/groupId

3artifatIdspring-boot-starter-test/artifatId

4/dependeny

Junit

常⽤注解

@BeforeClass‒表⽰在类中的任意publicstaticvoid⽅法执⾏之前执⾏

@AfterClass‒表⽰在类中的任意publicstaticvoid⽅法执⾏之后执⾏

@Before‒表⽰在任意使⽤@Test注解标注的publicvoid⽅法执⾏之前执⾏

@After‒表⽰在任意使⽤@Test注解标注的publicvoid⽅法执⾏之后执⾏

@Test‒使⽤该注解标注的publicvoid⽅法会表⽰为⼀个测试⽅法

@Transactional事务回滚注解

assert断⾔⽅法

assertNull(java.lang.Objectobject)检查对象是否为空

assertNotNull(java.lang.Objectobject)检查对象是否不为空

assertEquals(longexpected,longactual)检查long类型的值是否相等

assertEquals(doubleexpected,doubleactual,doubledelta)检查指定精度的double值是否相等

assertFalse(booleancondition)检查条件是否为假

assertTrue(booleancondition)检查条件是否为真

assertSame(java.lang.Objectexpected,java.lang.Objectactual)检查两个对象引⽤是否引⽤同

⼀对象(即对象是否相等)

assertNotSame(java.lang.Objectunexpected,java.lang.Objectactual)检查两个对象引⽤是否

不引⽤统⼀对象(即对象不等)

版本问题

当前我司springboot项⽬版本⽀持junit5,推荐使⽤junit5.

@RunWith注解

1/**

2*以mokito环境启动

3*/

4@RunWith(MokitoJUnitRunner.lass)

5

6/**

7*启动springboot环境进⾏单元测试,此⽅式会调⽤真实依赖对象

8*

9*单元测试开发中,应减少此测试⽅式

10*理由:SpringBootTest会启动springboot应⽤程序

11*1.占⽤系统端⼝

12*2.加载⾮单元测试相关bean,效率低

13*/

14@SpringBootTest

15@RunWith(SpringRunner.lass)

Mockito

单元测试的思路是:想在不涉及依赖关系的情况下,测试代码的有效性,⽽我们就是通过Mockito

来隔离这种依赖关系。Mockito是⼀个针对Java的Mock框架。它能以⼀种可控的⽅式去获取⼀个

假对象,通过假对象来模拟真实的对象⾏为。

常⽤注解

1.@Mock-注解可以理解为对mock⽅法的⼀个替代。使⽤该注解时,使⽤

@RunWith(MockitoJUnitRunner.class)注解使该注解⽣效。

2.@InjectMock-创建⼀个实例,简单的说是这个Mock可以调⽤真实代码的⽅法,其余⽤@Mock注解

创建的mock将被注⼊到⽤该实例中。

3.@MockBean当使⽤springRunner时,使⽤@MockBeanmock对象,此注解会将Mock对象添加到

Sprin

文档评论(0)

易油科技首席架构师 + 关注
实名认证
服务提供商

精通系统架构设计,能够设计可扩展、高效、安全的系统。 面对复杂问题时,能够运用创造性思维找到解决方案。 带领团队落地多个大型项目。

1亿VIP精品文档

相关文档