java单元测试工具:JUnit4(一)概述及简单例子

来源:互联网 发布:java swing listview 编辑:程序博客网 时间:2024/05/24 22:44
注:该笔记总结自慕课网的JUnit视频教程,入门级别。
1、JUnit概述
     1.1 什么是JUnit
          a.JUnit是用于编写可复用测试集的简单框架,是xUnit的一个子集。(xUnit是一套基于测试驱动开发的测试框架,其中包含PythonUnit、CppUnit、JUnit等)
          b.JUnit测试时程序员测试,即所谓的白盒测试,因为程序员知道被测试的软件如何(HOW)完成功能和完成什么样(What)的功能。
          c.多数java的开发环境都已经集成了JUnit作为单元测试的工具,比如Eclipse。
     1.3 为什么要使用测试工具
          a.测试框架可以帮助我们对编写的程序进行有目的的测试,提前对代码中的bug进行debug,以保证后续开发过程中被开发系统的正确性与稳定性。
          b.很多人的测试方法是sysout输出控制台观察,这样测试枯燥、繁琐,效率很低。
          c.JUnit的断言机制,可以直接将我们的预期结果和程序运行的结果进行对比,确保对结果的可预知性。
     1.2 相关链接
JUnit官网:http://junit.org/
JUnit的jar包下载:https://github.com/junit-team/junit/wiki/Download-and-Install

2.简单例子快速入门
     2.1 创建简单业务类
          使用Eclipse创建一个java项目,导入JUnit相关包。因为eclipse集成了JUnit框架,所以可以直接右键项目,选择Build Path →点击Add Libraries → 选择JUnit → 点击Next,选择JUnit版本,然后Finish。(也可以自己下载jar包作为用户库来添加)。
          编写一个简单的计算类:Calcuate类

     
package util;

/**
 * 实现加减乘除的简单计算类
 *
 */
public class Calculate {
    public int add(int a,int b){
        return a+b;
    }
    public int subtract(int a,int b){
        return a-b;
    }
    public int multiply(int a,int b){
        return a*b;
    }
    public int divide(int a,int b){
        return a/b;
    }
}
     2.2 创建测试类

          a.为了使测试类与项目类不混杂,在项目中新建一个文件夹,存放我们写的测试类。右击项目名称→new→Source Folder,在新的文件夹下建立与需要测试的源代码类相同包结构的包。
         
          b. 右键Calcuate类,new 一个 JUnit Test Case →在弹出的对话框中更改Source Folder的地址到新建的文件夹的包下
         
          测试类的命名规则:所要测试的类名+Test。如Calculate类的测试类为CalculateTest。
          测试方法的命名规则:test+所要测试的方法名且首字母大写。如add(int a,int b)方法的测试方法为testAdd(int a,int b)。
          测试方法的返回值是:void
          
          c.代码:

package util;

import static org.junit.Assert.*;

import org.junit.Test;

public class CalculateTest {

    @Test
    public void testAdd() {
        assertEquals(6, new Calculate().add(3, 3));
    }

    @Test
    public void testSubtract() {
        assertEquals(2,new Calculate().subtract(6, 4));
    }

    @Test
    public void testMultiply() {
        assertEquals(6,new Calculate().multiply(2, 3));
    }

    @Test
    public void testDivide() {
        assertEquals(2,new Calculate().divide(6, 3));
    }

}



          实现完成后如下图:

                                                 

     2.3 右键测试类,选择Run As , JUnit Test,结果如下:
                                                  
状态条为绿色,则表示测试成功。
     3.总结
          *1.测试方法上必须使用@Test进行修饰
* 2.测试方法必须使用public void 进行修饰,不能待任何的参数
* 3.新建一个源代码目录
* 4.测试类的包应该和被测试类保持一致
* 5.测试单元中的每个方法必须可以独立测试,测试方法间不能有任何的依赖
* 6.测试类使用Test作为类名的后缀
* 7.测试方法使用test作为方法名的前缀


0 0