1. 加环境变量
set classpath=%classpath%;INSTALL_DIR/junit3/junit.jar;INSTALL_DIR/junit3
INSTALL_DIR/junit3/junit.jar junit的api
INSTALL_DIR/junit3 要运行的测试案例路径(如果不是测试junit自带案例,不是必须的)
2. 运行测试案例
有三种测试方法。结果是一样的,只是3种显示形式。
A. 文字模式的測試範例如下:
java junit.textui.TestRunner junit.samples.AllTests
B. Swing圖形模式的測試範例如下:
java junit.swingui.TestRunner junit.samples.AllTests
C. AWT圖形模式的測試範例如下:
java junit.awtui.TestRunner junit.samples.AllTests
3. jubilder等工具已经集成junit
简单说一下jbuilder中junit的使用
新建中选择Test
Test Case是建立test case 测试。下一步会让选择测试哪个类的哪些方法
代码生成后,修改代码达到要测试的目的。
Test Suite是Test Suite测试。
Junit的两种测试方式
1. Test Case
可以对单个类进行单元测试。(或者将多个类放到里面,不过感觉会乱,一个类(interface)一个Case应该比较好).这就存在一个问题,到最后要一个个运行所有的Case。这样会比较麻烦。所以有了Test Suite
package org.bluebea.test;
import junit.framework.*;
import org.bluebea.c.*;
public class TestSayHello extends TestCase {
private SayHello sayHello = null;
protected void setUp() throws Exception {
super.setUp();
sayHello = new SayHello();
}
protected void tearDown() throws Exception {
sayHello = null;
super.tearDown();
}
public void testHello() {
String expectedReturn = "hello";
String actualReturn = sayHello.hello();
assertEquals("this is result", expectedReturn, actualReturn);
/**@todo fill in the test code*/
}
}
setUp
是继承下来的方法,在类的开始会执行
tearDown
是继承下来的方法,在类的结束会执行
testHello
是测试方法。assertEquals方法比较要测试函数的返回结果与设计结果是否相同。
2. Test Suite
Test Suite是集成测试。使用Test Suite时, Test Case也是必须的。只是将所有的Test Case加到Test Suite中。一块进行测试。Test Suite实际上是一个Test Case的容器。当然它也可以嵌套Test Suite.
package org.bluebea.test;
import junit.framework.*;
public class TestSuiteHa extends TestCase {
public TestSuiteHa(String s) {
super(s);
}
public static Test suite() {
TestSuite suite = new TestSuite();
suite.addTestSuite(org.bluebea.test.TestSayHello.class);
suite.addTestSuite(org.bluebea.test.TestSayNum.class);
return suite;
}
}
可以看到。test suite仅是将test case的class加入自己的容器中。