码迷,mamicode.com
首页 > 其他好文 > 详细

JUnit单元测试举例(@Test,@Before,@After,@beforeClass,@afterClass,assertEquals,assertTrue等)

时间:2015-04-04 09:12:11      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:junit   单元测试   

需要测试的类Person:

package cn.edu.lstc.junit;

public class Person {
	
	public void run() {
		System.out.println("run...");
	}

	public void eat() {
		System.out.println("eat...");
	}

	public String a() {
		return "1";
	}
}

@Test,@Before,@After

package cn.edu.lstc.junit;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
//before比beforeclass更常用
public class PersonTest {
	private Person p;//成员域
	
	//以前在main里面测试,测试一个要注释一个 麻烦,
	//现在你想测试那个就在那个的方法上右击测试就ok
	
	@Before
	public void before(){
		System.out.println("before");
		p = new Person();//测试方法之前自动执行(每執行一個方法都要執行一次,因為不是static),可以放初始化代码片段
	}
	
	@Test
	public void testRun() {
		p.run();
	}

	@Test
	public void testEat() {
		p.eat();
	}
	
	@After
	public void after(){
		System.out.println("after");
		p = null;
	}
}
//:out
/*
	before
	eat...
	after
	before
	run...
	after
*/

@Test,@beforeClass,@afterClass

package cn.edu.lstc.junit;

import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;

public class Person2Test {

	private static Person p;//成员域
	
	@BeforeClass
	public static void beforeClass(){//需要是static
		System.out.println("beforeclass");
		p = new Person();//测试方法之前自动执行(整个过程只执行一次因為是static),可以放初始化代码片段	
	}
	@Test
	public void testRun() {
//		Person p = new Person();//这代码可以注释掉了因为前面定义了一个全局的p对象,在测试方法时会自动执行
		p.run();
	}
	@Test
	public void testEat(){
//		Person p = new Person();//同上
		p.eat();
	}
	@AfterClass
	public static void afterClass(){
		System.out.println("afterclass");
		p = null;//使其不再指向對象
	}
}
//out:
/*
	beforeclass
	eat...
	run...
	afterclass
*/
assertEquals,assertTrue...

package cn.edu.lstc.junit;

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

public class Demo {
	@Test
	public void testA(){
		Person p = new Person();
		//斷言
//		Assert.assertEquals("1",p.a());//通过测试,期望返回1,结果也返回了1
		Assert.assertArrayEquals(new int[]{1,1}, new int[]{1,1});//測試通過
//		Assert.assertArrayEquals(new int[]{1,1}, new int[]{1,2});//測試失敗
		
		
//		Assert.assertTrue(false);//測試失敗,
		Assert.assertFalse(false);//測試成功
	}

}


JUnit单元测试举例(@Test,@Before,@After,@beforeClass,@afterClass,assertEquals,assertTrue等)

标签:junit   单元测试   

原文地址:http://blog.csdn.net/u012110719/article/details/44870757

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!