10.Java的单元测试

一.Junit单元测试

1.测试分类:

  • 白盒:不需要写代码,给输入值看程序是否能够输出期望值即可。
  • 黑盒:需要写代码,关注程序具体执行流程。

2.Junit使用:

使用步骤:

  1. 定义一个测试类:类名后加Test
  2. 定义一个测试方法:可以独立运行
    • 方法名:test加方法名
    • 返回值:void
    • 参数列表:空参
  3. 给方法加@Test
  4. 导入Junit依赖环境

判定结果:

  • 红色:失败
  • 绿色:成功
  • 一般我们会使用断言操作来处理结果:Assert.assertEquals(期望的结果,运行的结果)

补充:

  • @Before:修饰的方法会在测试的代码之前被自动执行,目的是用于资源申请。
  • @After:修饰的方法会在测试的代码之后被执行,目的是用于资源释放。
  • 无论执行成功或失败,这两个方法都会执行。

主程序定义了add1和add2两个方法

 1 public class demo01 {
 2 
 3     public int add1(int a, int b) {
 4         return a + b;
 5     }
 6 
 7     public int add2(int a, int b) {
 8         return a * b;
 9     }
10 }

测试程序:

 1 public class demo01Test {
 2 
 3     @Before
 4     public void init() {
 5         System.out.println("init方法执行,用于申请资源");
 6     }
 7 
 8     @After
 9     public void close() {
10         System.out.println("close方法执行,用于释放资源");
11     }
12 
13     @Test
14     public void testAdd1() {
15         demo01 d = new demo01();
16         int result = d.add1(1, 2);
17         Assert.assertEquals(3, result);
18     }
19 
20     @Test
21     public void testAdd2() {
22         demo01 d = new demo01();
23         int result = d.add2(1, 2);
24         Assert.assertEquals(3, result);
25     }
26 }

执行结果:testAdd1执行成功,testAdd2执行失败

原文地址:https://www.cnblogs.com/zhihaospace/p/12150209.html