テスト(Junit 3)
コードをテストするためにしなければならないことはいくつかあります。
TestCase
テストクラスは
TestCase
を継承し、テストメソッドはtest
で始まり、パラメータ付き構造メソッドによって名前によってTestCaseを作成することができる.クラスにsuiteメソッドを追加して選択的に実行できます
public static Test suite(){
System.out.println("suite");
TestSuite suite = new TestSuite();
suite.addTest(new TestLargest("testLargest"));
return suite;
}
TestSuite
コンビネーションテスト用
TestSuite suite= new TestSuite();
suite.addTest(new MathTest("testAdd"));
suite.addTest(new MathTest("testDivideByZero"));
大量テスト時
Class[] testClasses = { MathTest.class, AnotherTest.class }
TestSuite suite= new TestSuite(testClasses);
Pre-MethodのsetuUp tearDown
各testの前にsetupが実行され、完了後にtearDownが実行されます
protected void setUp() throws Exception {}
@Override
protected void tearDown() throws Exception {}
Pre-suiteのsetuUp tearDown
suite前後にsetup tearDownを1回実行
suite(どんな方法でsuiteを作成しても)をTestSetupで包装する
public static Test suite(){
TestSuite suite = new TestSuite();
suite.addTest(new TestLargest("testLargest"));
suite.addTest(new TestLargest("testSmallest"));
TestSetup suiteSetup = new TestSetup(suite){
@Override
protected void setUp() throws Exception {
System.out.println("suite setup");
}
@Override
protected void tearDown() throws Exception {
System.out.println("suite tearDown");
}
};
return suiteSetup;
}
アサーションメソッド
assertEquals() assertTrue() assertFalse() assertNull() assertNotNull() assertSame() assertNotSame() fail() failNotEquals() failSame() failNotSame()
カスタムアサーション
独自のテストベースクラスを作成し、ベースクラスに独自の断言方法を提供します.
public class BaseTestCase extends TestCase {
protected void setUp() throws Exception {
super.setUp();
}
protected void tearDown() throws Exception {
super.tearDown();
}
public void assertGood(int score){
assertTrue( score >= 60);
}
}
JUnitと異常
テストには2つの異常があります
public void testSortList() throws NullPointerException {
try {
MyClass.sortList(null);
fail();
} catch (Exception e) {
assertTrue(true);
}
}
より具体的なテスト方法はまだ検討されている.
簡単なまとめ
junitを使用してテストを行うには、一般的に次の4つのステップにまとめることができます.
非常に簡潔なJunit 3、4のチュートリアルを添付します
http://download.csdn.net/detail/a06_kassadin/8555949