【junit】junit4单元测试eclipse
这两天看了网上down下来的junit视频,有百度了一下junit。
一、百度junit,在github上发布的都是5了,没有看到4的影子了,我在eclipse的maven加载了最新的5.0.2,发现效果并不理想。

不理想原因:1、可能自己基础太差,不会用;
2、可能是我的eclipse不支持junit5(我也不知道),反正建立测试文件的时候,eclipse只能选择3或者4;
二、视频中推荐组合:junit4.11、hamcrest-core-1.3、hamcrest-library-1.3,maven引入jar包,如图

三、创建测试类:

说明:1、eclipse提供版本3、版本4,选择版本4;
2、为那个类文件建立测试类,就在该类文件名后加Test;
3、最下面选择对应的目标类文件,下一步之后选择该类文件中具体的类方法,下面是我为T1、T2文件建立的测试文件,如图

四、测试类方法说明
public class T2Test {
	@BeforeClass//该测试文件只打印一次
	public static void BeforeClass() {
		System.out.println("第一个beforeClass");
	}
	@AfterClass//该测试文件只打印一次
	public static void AfterClass() {
		System.out.println("第一个afterClass");
	}
	@Before//每个方法前只打印一次
	public void Before() {
		System.out.println("第一个before");
	}
	@After//每个方法后只打印一次
	public void After() {
		System.out.println("第一个after");
	}
	@Test
	public void testStrShow() {
		String str = new T2().strShow();
		String st = "dd";
		System.out.println(st);
		assertThat(str, is("hello"));
		assertThat(str, not("hellot"));
		assertThat(str, containsString("he"));
		assertThat(str, endsWith("llo"));
		assertThat(str, startsWith("he"));
		assertThat(5, equalTo(str.length()));
		assertThat(str, equalToIgnoringCase("hEllo"));
		assertThat(st, equalToIgnoringWhiteSpace("    dd "));//忽略开头、结尾的空格
	}
	@Test
	public void testMap() {
		Map<String, Object> map = new T2().map();
		List<String> list = new ArrayList<>();
		list.add("id");
		System.out.println("map");
		assertThat(map, hasEntry("id", "wg"));
		assertThat(list, hasItem("id"));
		assertThat(map, hasKey("id"));
		assertThat(map, hasValue("wg"));
	}
}
五、运行
分为三种:1、单个类方法进行测试,在工程目录测试类文件下的测试类方法右键,测试单个方法;
2、测试整个类文件,在目录下测试文件下右键,或者在打开的类文件下右键;
3、测试多个类文件,在目录下,对整个测试文件夹右键,下面的测试文件都进行测试
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号