关于Junit中Assert已经过时

        在junit4.12之后,Assert就过时了,提供了TestCase来取代;

     同样在TestCase中原本比较常见的一些方法也已经取消了,例如:assertNotEquals、assertThat、assertArraysEquals。

 

自己写了一个MathUtil方法,代码很简单,就不贴了:

package a_junit;

import org.junit.Test;

import junit.framework.Assert;
import junit.framework.TestCase;
/**
 * 关于Junit的使用:
 * 		可以使用选中方法然后run as 1 Junit Test
 * 		也可以使用在online中查看缩略图,对缩略图中的方法进行run as
 * 
 * 满足Junit Test的条件,必须是public void的(不能有返回值,必须是public的)
 * 而且方法中没有参数(模拟main函数的入口)
 * 可以抛出异常!
 * 
 * @author mzy
 */
public class TestMathUtil {
	
	@Test
	public void testAdd() {
		int a = 0;
		int b = 5;
		System.out.println(MathUtil.add(a, b));
	}
	
	@Test
	public void testDiv() {
		int a = 5;
		int b = 3;
		System.out.println(MathUtil.div(a, b));
	}
	
	@Test
	public void testAddIsRight() {
		/*
		 * 手动抛出错误!
		 */
		if(MathUtil.add(5, 10) != 15) {
			throw new RuntimeException("错误答案!");
		}
	}
	
	@Test
	public void testDivIsRight() {
		/*
		 * 使用Junit中专业的判定结果的方法:
		 * 		Assert	断言类
		 * 在junit4.12中,Assert过时,被TestCase取代
		 * assertNotEquals、assertThat、assertArraysEquals  已经取消
		 *  取消
		 *  
		 * assertTrue 
		 * assertFalse
		 * assertNotSame
		 * assertSame
		 * assertEquals
		 * 
		 * assertNull
		 * assertNotNull
		 */
		// Assert.assertEquals(15, MathUtil.div(45, 3)); // 判断两个值是否相等
		// Assert.assertNotSame(expected, actual);
		
		TestCase.assertEquals(15, (int)MathUtil.div(45, 3)); // 使用equals进行判断(对象的话,可重写equals方法进行对象匹配)
		TestCase.assertSame(15, MathUtil.add(10, 5)); // 使用 == 进行判断
		
		TestCase.assertNotSame(15, MathUtil.add(10, 8));
		
	}
}


转载于:https://www.cnblogs.com/mzywucai/p/11053412.html

你可能感兴趣的:(java)