现在的位置: 首页 > 综合 > 正文

JUnit的使用

2018年06月07日 ⁄ 综合 ⁄ 共 1955字 ⁄ 字号 评论关闭

JUnit简介

是一个已经被多数Java程序员采用和实证的优秀的单元测试框架

思想:先写测试,后写代码

我们在日常开发中,需求改变是很经常的,改变一些地方有时候会引起其他地方的错误。如果有了测试,并已经建立了一个好的测试框架,对于需求的变动,修改完代码后,只要重新运行测试代码,如果测试通过,也就保证了修改的成功,如果测试中出现错误,也会马上发现错在哪里。修改相应的部分,再运行测试,直至测试完全通过。

JUnit由六个包组成

分别是Framework、Extensions、Runner、Awtui、Textui和Swingui,前三个包是构建包,后三个包是表现层包

Junit的安装和配置

大致分为四步 :(卸载则只需去掉配置的CLASSPATH值)

1、首先将Junit压缩包解压到一个物理目录中(如d:\Junit) 
2、记录Junit.jar文件所在的目录名 
3、设置系统环境变量CLASSPATH的值(如d:\Junit\Junit.jar)
4、调出命令窗口,输入以下内容,测试是否添加成功
 java  junit.swingui.TestRunner 或java junit.textui.TestRunner

JUnit编写测试代码的一般步骤

(1)引入JUnit框架包。import junit.framework.* 
(2)测试类继承JUnit的TestCase类。 
(3)实现类的main()方法,在main()方法中简单调用junit.textui.TestRunner.run(SimpleTest.class)来指定执行测试类。 
(4)重载setUp()和tearDown()方法,setUp()方法用于执行每个测试用例时进行环境的初始化工作 
(比如打开数据库连接),tearDown()方法用于执行每个测试用例后清除环境(比如关闭数据库连接)。 
(5)编写每个测试用例,写一些testXXXX()方法(一般是在要测试的方法前附加test) 

import junit.framework.TestCase;
public class TestClass2 extends TestCase {
	Account a = new Account("测试1", 1);
	Account b = new Account("测试2", 2);
	public static void main(String args[]) {
		junit.textui.TestRunner.run(TestClass2.class);//使用文本交互模式显示测试过程
		//junit.swingui.TestRunner.run(TestClass2.class);//使用图形交互模式显示测试过程
	}
	public void testAccount() {
		assertEquals("测试11", a.getStr());//断言方法
		assertEquals(1, a.getNum());
		assertEquals("测试2", b.getStr());
		assertEquals(2, b.getNum());
	}
}
class Account {
	String str;
	int num;
	public Account(String str, int num) {
		this.str = str;
		this.num = num;
	}
	public String getStr() {
		return str;
	}
	public int getNum() {
		return num;
	}
}

扩展:测试包test suite

所谓测试包(test suite)其实就是同一会话中应当执行的测试集合。 
测试包把测试组织在一起执行,而不论测试是否在同一文件里。

测试包的使用例子:

import junit.framework.TestCase;
import junit.framework.TestSuite;
public class TestClass2 extends TestCase {
	public static TestSuite suite() {
		TestSuite t = new TestSuite();//创建TestSuite测试包
		t.addTest(new HelloWorldTest("testSayHello"));//添加测试
		t.addTest(new SimpleTest("testTest"));
		t.addTestSuite(TestRunner.class);
		return t;
	}
	public static void main(String args[]) {
		junit.textui.TestRunner.run(suite());
	}
}

Android中使用JUnit,参考资料

http://www.weebly.com/uploads/4/2/3/2/4232910/android-junit.pdf

抱歉!评论已关闭.