前言

单元测试是什么?

Junit是一个Java编程语言的单元测试框架。

JUnit 在测试驱动的开发方面有很重要的发展,是起源于 JUnit 的一个统称为 xUnit 的单元测试框架之一。

JUnit 促进了“先测试后编码”的理念,强调建立测试数据的一段代码,可以先测试,然后再应用。这个方法就好比“测试一点,编码一点,测试一点,编码一点……”,增加了程序员的产量和程序的稳定性,可以减少程序员的压力和花费在排错上的时间。

有什么用?

它提供注释来识别测试方法,提供断言来测试预期结果,提供测试运行来运行测试。

可以在一个测试类里面测试多个方法,而无需像使用main方法那执行测试一次就要修改一次。

JUnit的使用

使用单元测试主要分为以下5个步骤:

  1. 新建测试类

建议新建一个test包来管理单元测试类。

建议新建的类名为待测试的类名后面加上Test。

例如,待测试的类名叫做Calculator。那么这个新建的类名就叫做CalculatorTest。

  1. 定义测试方法

在这个新建的类里面定义测试方法,建议该方法名为待测试的方法名前面加上test。

例如,带测试的方法名为add。那么这个方法名则为testAdd。

其次,建议返回值为空值,参数列表为空参。

  1. 给方法加上注释@Test
  2. 导入依赖环境

直接在方法左侧出现的小灯泡给出的方法中导入。

导入失败时的解决方法

  1. 使用Alt + Enter键自动导入
  2. File->Project Structure

    在弹出的文件浏览窗口,选择"IDEA的安装目录\lib导入以下包:
  • junit-4.11.jar
  • hamcrest-core-1.3.jar
  1. 点击方法的左侧出现的绿色三角

补充

  1. 使用断言来测试预期的结果

使用方法为在待测试方法里合理的位置(如最后一行)加上Assert.assertEquals(期望的结果,运算的结果);

  1. 可以使用@Before与@After注解来在测试类中申请、释放必要资源:
  • @Before修饰的方法会在测试方法之前被自动执行
  • @After修饰的方法会在测试方法执行之后自动被执行
//示意代码
public class CalculatorTest {
    @Test
    public void testSub() {
        Calculator c = new Calculator();
        int result = c.sub(1, 2);
        Assert.assertEquals(-1,result);
    }
}

小结

五个步骤:新建测试包下测试类,测试类里写测试方法(按需要加断言),测试方法头加@Test注释,点击小三角测试。

后记

本文主要是零散的知识点笔记,仅用以了解大概内容,更多知识点请自行搜索了解。