Junit测试工具使用

Junit是单元测试框架工具,在项目开发中是经常用到的,利用JUnit4进行单元测试非常简单方便,所以熟悉Junit是很有必要的。
Junit优点:

  1. 安装使用方便
  2. 可以同时执行多个测试方法
  3. 测试结果直观明了

本文记录Junit使用的基本知识:

 1. 编写测试类
 2. 使用断言
 3. 使用suite套件对多个测试类进行批处理

运行环境和工具:

  1. Intellij IEDA
  2. juint-4.10(下载地址)

详细步骤:

  1. 打开IDEA,新建java项目

  2. 在项目中导入junit包
    File->Project Structure->libraries->点击‘+’ ->java->找到下载的junit-4.10->apply->ok
    可以看到junit已经导入项目
    这里写图片描述

  3. 在src中编写源代码(被测试的类及其方法),编写测试类和测试方法,项目目录结构如下:
    这里写图片描述
    被测试类代码:
package main.com.hnust.learnjunit;

public class StringOpeator {

    public String sayHello(String str1,String str2){
        return str1+str2;
    }
}

测试类代码及其要求:

package test.junittest;

import main.com.hnust.learnjunit.StringOpeator;
import org.junit.Assert;
import org.junit.Test;

public class JunitTestOne {
    /*Test注解标记*/
    @Test
    /*固定格式:(public修饰,void返回值,自定义测试方法名称,无参)*/
    public void test1(){
        StringOpeator so =new StringOpeator();
        String str=so.sayHello("Hello","Junit");
        //断言语法
        Assert.assertEquals("HelloJunit",str);
    }
}

在测试类中右键,选择“Run**”,可以看到下面的测试执行结果窗口
这里写图片描述
原谅绿加勾表示测试结果正确。

4 . 尝试在测试类中多加入几个test方法,也就是多加入几组测试用例,测试运行:这里写图片描述可以看到测试结果窗口左侧共有三个测试方法被执行,其中test1测试结果正确test2,test3出现错误,我们可以点击它,然后在右侧看错误原因,可以知道是null空指针异常,说明被测试类的代码有bug,我们可以对其进行空指针处理,重新运行:
这里写图片描述可以看到test2测试方法结果正确,同理可以修改代码使得test3测试方法结果也正确。
5. 以上使用到Assert断言机制,所谓断言,就是判断是或者不是,它的作用和优点是什么呢?就是比较预期结果和实际结果,以图形化的方式显示结果,就像上图中,出现原谅绿色勾就表示预期结果和实际结果一样,而出现红色叹号就说明测试用例没通过,就需要改善源代码,避免程序潜在漏洞了。以Assert.assertEquals(“HelloJunit”,str)这行代码为例,”HelloJunit”是预期结果,str是实际结果,assertEqulas方法就是判断这两个字符串是否相同。当然断言的判断方法不止这个,介绍几种常见的断言方法:
assertEquals(expected,actural)
assertSame(),assertNotSame()
–以上两种区别和str1.equals(str2),str1==str2区别一样,前者比较值,后者比较地址。
assertFalse(),assertTrue()
assertNull(actural),assertNotNull(actural)

6.将测试类代码优化,提取出相同的代码放入测试类中,每一个测试方式是一个线程,重复代码使得测试程序占用过多资源

7.除了@Test,其他常用注解的使用
@Before在每个测试方法之前执行
@After在每个测试方法之后执行
@BeforeClass在所有方法执行之前执行
@AfterClass在所有方法执行之后执行
这里写图片描述
由此可见,Before和After方法执行了三次,分别在三个测试方法前后执行,BeforeClass和AfterClass只执行一次,根据类加载机制,应该是在加载阶段就已经定义,属于类的共有方法,也就是静态方法,所以要使用static关键字修饰。

8 . 使用suite套件对多个测试类进行批处理
先建立多个测试类。。
然后建立一个测试总类
测试总类使用suite套件,格式如下,运行结果如下
这里写图片描述

这就是Junit基本使用知识,以后在使用过程中再挖掘其更多的功能,熟练使用测试工具对于程序员写出高质量代码,减少程序bug有很大的帮助。

猜你喜欢

转载自blog.csdn.net/superxiaolong123/article/details/79700108