SpringBoot 单元测试JUnit的使用详解
时间:2020-10-18 11:07:47|栏目:JAVA代码|点击: 次
一、简介
JUnit是一款优秀的开源Java单元测试框架,也是目前使用率最高最流行的测试框架,开发工具Eclipse和IDEA对JUnit都有很好的支持,JUnit主要用于白盒测试和回归测试。
白盒测试:把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对测试人 员是公开的;
回归测试:软件或环境修复或更正后的再测试;
单元测试:最小粒度的测试,以测试某个功能或代码块。一般由程序员来做,因为它需要知道内部程序设计和编码的细节;
二、JUnit使用
1、pom.xml中添加JUnit依赖。
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency>
2、简单代码
@RunWith(SpringRunner.class) @SpringBootTest public class JUnitTest { @Test public void test() { System.out.println(("----- method test ------")); String name = "yunfan"; Assert.assertEquals("yunfan22", name); } }
在测试类中运行项目:
很明显这是测试不通过的效果,如果是通过的呢,看下图:
3、注解说明
注解 | 释义 |
---|---|
@RunWith | 标识为JUnit的运行环境。 |
@SpringBootTest | 获取启动类、加载配置,确定装载Spring Boot。 |
@Test | 声明需要测试的方法。 |
@BeforeClass | 针对所有测试,只执行一次,且必须为static void。 |
@AfterClass | 针对所有测试,只执行一次,且必须为static void。 |
@Before | 每个测试方法前都会执行的方法。 |
@After | 每个测试方法前都会执行的方法。 |
@Ignore | 忽略方法。 |
4、超时测试
@Test(timeout = 1000)
5、断言测试
断言测试也就是期望值测试,是单元测试的核心也就是决定测试结果的表达式。
方法 | 释义 |
---|---|
Assert.assertEquals | 对比两个值相等 |
Assert.assertNotEquals | 对比两个值不相等 |
Assert.assertSame | 对比两个对象的引用相等 |
Assert.assertArrayEquals | 对比两个数组相等 |
Assert.assertTrue | 验证返回是否为真 |
Assert.assertFlase | 验证返回是否为假 |
Assert.assertNull | 验证null |
Assert.assertNotNull | 验证非null |
阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机