请选择 进入手机版 | 继续访问电脑版

SpringBoot之Junit单元测试

[复制链接]
世上人间 发表于 2021-1-1 18:31:49 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
一、概述

开发时,单元测试已经是必不可少的,一查验代码的逻辑,二、也方便他人代码的明确;
二、pom依赖

1、Junit4依赖
  1.    junit   junit   4.12
复制代码
2、Junit5依赖
  1.      org.springframework.boot    spring-boot-starter-test    2.2.6.RELEASE   
复制代码
这里接纳的是junit5,所以将兼容junit4以前的jar都清除了;
三、相关使用

1、注解
Junit4Junit5说明@Test@Test测试注解,标志一个方法可以作为一个测试用例@Before@BeforeEach被注解的方法会在类中的每个测试方法之前执行,以便执行某些须要的先决条件,比方数据的初始化等@BeforeClass@BeforeAll该注解与@Before注解作用雷同,区别在于用在静态测试方法@After@AfterEach该注释表现,每一测试方法执行后都必须执行的操作(如执行每一个测试后重置某些变量,删除暂时变量等)@AfterClass@AfterAll与@After注解作用雷同,区别在于用在静态测试方法@Ignore@Disabled当想暂时禁用特定的测试执行可以使用这个注解,每个被注解为@Ignore的方法将不再执行@Runwith@ExtendWith放在测试类名之前,用来确定测试在什么情况下运行,也可以不标注,会使用默认运行器@Parameters@ParameterizedTest用于使用参数化功能@SuiteClasses用于套件测试2、Junit4与Junit5比力


  • JUnit 4将所有内容捆绑到单个jar文件中;
  • Junit 5由3个子项目组成,即JUnit Platform,JUnit Jupiter和JUnit Vintage;
    JUnit Platform:界说了TestEngine用于开发在平台上运行的新测试框架的API;
    JUnit Jupiter:它具有所有新的junit注释和TestEngine实现,以运行使用这些注释编写的测试;
    JUnit Vintage:支持在JUnit 5平台上运行JUnit 3和JUnit 4编写的测试。
四、注意事项

使用Junit5进行单元测试时,有大概会出现以下问题:

**问题原因:**项目中引入了Junit4依赖,但是用的却是Junit5进行单元测试,且缺少junit-vintage-engine进行兼容;
解决方案:
1、直接引入以下依赖;
  1.    org.springframework.boot   spring-boot-starter-test   2.2.6.RELEASE
复制代码
该依赖包罗所有的Junit5相关依赖且引入了Junit4依赖;
2、将Junit4依赖清除且去除Junit5中的junit-vintage-engine依赖,不需要兼容其他测试版本;
  1.    org.springframework.boot   spring-boot-starter-test                        junit           junit                                org.junit.vintage           junit-vintage-engine         
复制代码
以上方案二选一均可解决以上问题;
五、竣事语

赠人玫瑰,手有余香,请留下你的赞大概名贵意见吧!

来源:https://blog.csdn.net/qq_38098851/article/details/112007959
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题

专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )