JUnit4 使用指南一 (简单上手)

1.      
简介 


们在编写大型程序的时候,需要写成千上万的方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这
一小部分功能是正确的。但是,我们同时应该确保每一个函数都完全正确,因为我们今后如果需要对程序进行扩展,用到某个函数的其他功能,而这个功能有
bug
话,那绝对是一件非常郁闷的事情。所以说,每编写完一个函数之后,都应该对这个函数的方方面面进行测试,这样的测试我们称之为单元测试。传统的编程方式,
进行单元测试是一件很麻烦的事情,你要重新写另外一个程序,在该程序中调用你需要测试的方法,并且仔细观察运行结果,看看是否有错。正因为如此麻烦,所以
程序员们编写单元测试的热情不是很高。于是有一个牛人推出了单元测试包,大大简化了进行单元测试所要做的工作,这就是
JUnit

JUnit 是针对 Java 语言的一个单元测试框架,它被认为是迄今为止所开发的最重要的第三方 Java 库。 它已经成为Java语言事实上的标准单元测试库。JUnit的易用性无疑是它受欢迎的主要原因。JUnit4JUnit框架有史以来最大的改进,其主要利用了Java5Annotation特性,大大简化了测试用例的编写。 

 

2.      
Eclipse中使用JUnit4 进行单元测试 

下面主要通过一个实例,简单介绍在EclipseHelios Service Release 2 version)中如何使用JUnit4来进行单元测试。这只是一个简单的速成教程,所以涉及的知识点会非常少,只是让大家了解下JUnit4的大概使用流程。

取的例子很简单,只是对计算器的加法功能实现测试。首先我们新建一个名为 “JUintTest”的Java Project,创建一个Caculator类,实现其add功能。Caculator类的代码实现如下:


package com.rigel.ut;

/**
 * 一个计算器功能类
 * 
 * */
public class Calculator {
	
	private int result; 	/* 保存计算的结果 */
	
	/**
	 * 实现加法功能
	 * 为了测试 @Test 注解
	 * */
	public void add(int a, int b) {
		result = a + b;
	}
	
	public void setResult(int result) {
		this.result = result;
	}
	public int getResult() {
		return this.result;
	}
	
}

接下来导入JUnit4所需要的JAR包,右键项目,选择属性,在Libraries Tab中,点击 “Add Library”,选择“JUint“,再选择”JUnit4“,然后确定。如下图所示:

 

 

如果Eclipse中没有装JUnit的插件,可自己到网站上去下载JUnit4的lib包,将对应依赖的JAR文件导入。

 

为了更好的区分源代码与测试代码,我们推荐将测试代码放在Project的 test 目录下,与 src 目录对应,单测代码应当尽量与被测代码一致。最好整个项目的目录结构如下图所示:

 

其中,为了使 test 目录可以作为存放源代码的目录,需将 test 目录添加到 Source 中,如下图所示,点击”Add Folder“,选中 ”test“目录,添加进来就可以。如果没有这样添加的话,会导致在 ”test“目录中无法添加包。


 

实现 Calculator 的测试类 CalculatorTest,其内容如下:


package com.rigel.ut;

import org.junit.Assert;
import org.junit.Test;

public class CalculatorTest {

private Calculator calc = new Calculator();

@Test
public void testAdd() {
calc.add(
0,4);
int result = 4;
// 通过 Assert 对 function 功能进行测试
Assert.assertEquals(result, calc.getResult());
}
}

这样,接下来就可以运行这个TestCase来查看测试结果,点击”Run“,选择”Run As JUnit Test“ 。或者直接使用快捷键 ”Ctrl + F11“,可以看到,最后的测试结果如下图所示:

表示代码测试成功。 OK,JUnit4的单元测试流程基本就是这样。


们总结一下。要对你的代码进行单元测试,首先导入所需要依赖的JUint4的JAR包,然后新建一个 test
目录来专门存放对应的TestCase,最好在对应的包下编写你的TestCase。上面例子中的”CalculatorTest“类中,使用了
@Test 标签来标识一个测试方法,方法内通过
Assert(断言)来判断函数的返回结果是否与预期一致。下一章节会详细分析JUint4中常见的一些用法,并对主要的标签进行介绍。这一章节到此结
束。谢谢。

1.      
简介 


们在编写大型程序的时候,需要写成千上万的方法或函数,这些函数的功能可能很强大,但我们在程序中只用到该函数的一小部分功能,并且经过调试可以确定,这
一小部分功能是正确的。但是,我们同时应该确保每一个函数都完全正确,因为我们今后如果需要对程序进行扩展,用到某个函数的其他功能,而这个功能有
bug
话,那绝对是一件非常郁闷的事情。所以说,每编写完一个函数之后,都应该对这个函数的方方面面进行测试,这样的测试我们称之为单元测试。传统的编程方式,
进行单元测试是一件很麻烦的事情,你要重新写另外一个程序,在该程序中调用你需要测试的方法,并且仔细观察运行结果,看看是否有错。正因为如此麻烦,所以
程序员们编写单元测试的热情不是很高。于是有一个牛人推出了单元测试包,大大简化了进行单元测试所要做的工作,这就是
JUnit

JUnit 是针对 Java 语言的一个单元测试框架,它被认为是迄今为止所开发的最重要的第三方 Java 库。 它已经成为Java语言事实上的标准单元测试库。JUnit的易用性无疑是它受欢迎的主要原因。JUnit4JUnit框架有史以来最大的改进,其主要利用了Java5Annotation特性,大大简化了测试用例的编写。 

 

2.      
Eclipse中使用JUnit4 进行单元测试 

下面主要通过一个实例,简单介绍在EclipseHelios Service Release 2 version)中如何使用JUnit4来进行单元测试。这只是一个简单的速成教程,所以涉及的知识点会非常少,只是让大家了解下JUnit4的大概使用流程。

取的例子很简单,只是对计算器的加法功能实现测试。首先我们新建一个名为 “JUintTest”的Java Project,创建一个Caculator类,实现其add功能。Caculator类的代码实现如下:

01 package com.rigel.ut;
02  
03 /**
04  * 一个计算器功能类
05  *
06  * */
07 public class Calculator {
08      
09     public int result;  /* 保存计算的结果 */
10      
11     public void add(int a, int b) {
12         result = a + b;
13     }
14      
15     public void setResult(int result) {
16         this.result = result;
17     }
18     public int getResult() {
19         return this.result;
20     }
21      
22 }

接下来导入JUnit4所需要的JAR包,右键项目,选择属性,在Libraries Tab中,点击 “Add Library”,选择“JUint“,再选择”JUnit4“,然后确定。如下图所示:

 

 

如果Eclipse中没有装JUnit的插件,可自己到网站上去下载JUnit4的lib包,将对应依赖的JAR文件导入。

 

为了更好的区分源代码与测试代码,我们推荐将测试代码放在Project的 test 目录下,与 src 目录对应,单测代码应当尽量与被测代码一致。最好整个项目的目录结构如下图所示:

 

其中,为了使 test 目录可以作为存放源代码的目录,需将 test 目录添加到 Source 中,如下图所示,点击”Add Folder“,选中 ”test“目录,添加进来就可以。如果没有这样添加的话,会导致在 ”test“目录中无法添加包。


 

实现 Calculator 的测试类 CalculatorTest,其内容如下:

01 package com.rigel.ut;
02  
03 import junit.framework.Assert;
04 import org.junit.Test;
05 import com.rigel.ut.Calculator;
06  
07 /**
08  * 计算器的单元测试类
09  * */
10 public class CalculatorTest {
11      
12     /**
13      * 测试加法功能
14      * */
15     @Test
16     public void testAdd() {
17         Calculator calc = new Calculator();
18         calc.add(4, 5);
19         int result = 9;
20         // 通过  Assert 对 function 功能进行测试
21         Assert.assertEquals(result, calc.getResult());
22     }
23      
24

这样,接下来就可以运行这个TestCase来查看测试结果,点击”Run“,选择”Run As JUnit Test“ 。或者直接使用快捷键 ”Ctrl + F11“,可以看到,最后的测试结果如下图所示:

表示代码测试成功。 OK,JUnit4的单元测试流程基本就是这样。


们总结一下。要对你的代码进行单元测试,首先导入所需要依赖的JUint4的JAR包,然后新建一个 test
目录来专门存放对应的TestCase,最好在对应的包下编写你的TestCase。上面例子中的”CalculatorTest“类中,使用了
@Test 标签来标识一个测试方法,方法内通过
Assert(断言)来判断函数的返回结果是否与预期一致。下一章节会详细分析JUint4中常见的一些用法,并对主要的标签进行介绍。这一章节到此结
束。谢谢。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注