注:该笔记总结自慕课网的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,在 新的文件夹下建立与需要测试的源代码类相同包结构的包。
右键Calcuate类,new 一个 JUnit Test Case →在弹出的对话框中更改Source Folder的地址到新建的文件夹的包下
Calculate类的测试类为 CalculateTest。
测试方法的命名规则:test+所要测试的方法名且首字母大写。如 add(int a,int b)方法的测试方法为testA dd(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));
}
}
实现完成后如下图:
右键测试类,选择Run As , JUnit Test,结果如下:
状态条为绿色,则表示测试成功。
3.总结
*1.测试方法上必须使用@Test进行修饰
* 2.测试方法必须使用public void 进行修饰,不能待任何的参数
* 3.新建一个源代码目录
* 4.测试类的包应该和被测试类保持一致
* 5.测试单元中的每个方法必须可以独立测试,测试方法间不能有任何的依赖
* 6.测试类使用Test作为类名的后缀
* 7.测试方法使用test作为方法名的前缀