【Spring Boot实战与进阶】单元测试JUnit的使用

2022-05-12 10:09:59 浏览数 (1)

Spring Boot是很优秀的框架,它的出现简化了新Spring应用的初始搭建以及开发过程,大大减少了代码量,目前已被大多数企业认可和使用。这个专栏将对Spring Boot框架从浅入深,从实战到进阶,不但我们要懂得如何去使用,还要去剖析框架源码,学习其优秀的设计思想。

汇总目录链接:【Spring Boot实战与进阶】学习目录

文章目录
  • 一、简介
  • 二、JUnit使用
    • 1、添加JUnit依赖。
    • 2、测试代码
    • 3、注解说明
    • 4、超时测试
    • 5、断言测试

一、简介

  JUnit是一款优秀的开源Java单元测试框架,也是目前使用率最高最流行的测试框架,开发工具Eclipse和IDEA对JUnit都有很好的支持,JUnit主要用于白盒测试和回归测试。   白盒测试:把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对测试人 员是公开的;   回归测试:软件或环境修复或更正后的再测试;   单元测试:最小粒度的测试,以测试某个功能或代码块。一般由程序员来做,因为它需要知道内部程序设计和编码的细节;

二、JUnit使用

1、添加JUnit依赖。

代码语言:javascript复制
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
</dependency>

2、测试代码

代码语言:javascript复制
@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、超时测试

代码语言:javascript复制
@Test(timeout = 1000)

5、断言测试

  断言测试也就是期望值测试,是单元测试的核心也就是决定测试结果的表达式。

方法

释义

Assert.assertEquals

对比两个值相等

Assert.assertNotEquals

对比两个值不相等

Assert.assertSame

对比两个对象的引用相等

Assert.assertArrayEquals

对比两个数组相等

Assert.assertTrue

验证返回是否为真

Assert.assertFlase

验证返回是否为假

Assert.assertNull

验证null

Assert.assertNotNull

验证非null

0 人点赞