论坛首页 Java企业应用论坛

Use JUnit (2)

浏览 1694 次
锁定老帖子 主题:Use JUnit (2)
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2012-07-05  

 

Junit3 diff Junit4

 

  • 包命名从junit.framework.xxx变更到org.junit.xxx. 
  • 在JUnit3.8中测试类必须继承TestCase父类,JUnit4中测试类不用继承TestCase 
  • 在JUnit3.8中 测试方法满足如下原则1)public 2)void 3)无方法参数4)方法名称必须以test开头,JUnit测试方法不用满足4)即命名不用test +methodName ,用Annotation。

 


Junit命令行下使用
note: Test definition head
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD})
public @interface Test 

 
1) use @Test
import org.junit.Test; 
public class ExpressionPuzzlers {

	@Test
	public void dosEquis() {
		char x = 'X';
		int i = 0;

		System.out.println(true ? x : 0);
		System.out.println(false ? i : x);
	}
}
 

2) 添加CLASSPATH,如CLASSPATH=".;D:\junit4.10\junit-4.10.jar"
javac ExpressionPuzzlers.java
or
不设置CLASSPATH,javac -classpath D:\junit4.10\junit-4.10.jar ExpressionPuzzlers.java

3) run
java org.junit.runner.JUnitCore ExpressionPuzzlers
直接运行 java ExpressionPuzzlers 会提示没有main方法
note:run in program with "org.junit.runner.JUnitCore.runClasses(TestClass.class, ...);"
原理分析:
在JUnitCore中有相应的main方法,通过读入参数运行被测试类
main method in JunitCore.java
public static void main(String... args) {
		runMainAndExit(new RealSystem(), args);
	}
 


 

论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics