Java クラスにより、TPTP JUnit テストは自動的に「test」で始まる名前のメソッドを識別し、それらをテスト・メソッドにマップします。例として、クラス SimpleTest のソースを以下に示します。
package junit.samples; import junit.framework.*; /** * Some simple tests. * */ public class SimpleTest extends TestCase { protected int fValue1; protected int fValue2; protected void setUp() { fValue1= 2; fValue2= 3; } public static Test suite() { /* * the type safe way * TestSuite suite= new TestSuite(); suite.addTest(new SimpleTest("add") { protected void runTest() { testAdd(); } }); suite.addTest(new SimpleTest("testDivideByZero") { protected void runTest() { testDivideByZero(); } }); return suite; */ /* * the dynamic way */ return new TestSuite(SimpleTest.class); } public void testAdd() { double result= fValue1 + fValue2; // forced failure result == 5 assertTrue(result == 6); } public void testDivideByZero() { int zero= 0; int result= 8/zero; } public void testEquals() { assertEquals(12, 12); assertEquals(12L, 12L); assertEquals(new Long(12), new Long(12)); assertEquals("Size", 12, 13); assertEquals("Capacity", 12.0, 11.99, 0.0); } public static void main (String[] args) { junit.textui.TestRunner.run(suite()); } }
名前が「test」で始まる 3 つのメソッド「testAdd」、「testDivideByZero」、「testEquals」があります。これらのメソッドは、「概要」タブの「テスト・メソッド」ペインにリストされます。
テスト・エディターを使用してテスト・メソッドを追加した場合は、新規のメソッドがコードに追加されることに注意してください。
また、TPTP で JUnit クラスを実行可能にする要件は、そのクラスに静的な「Test suite()」メソッド (標準の JUnit の手法) があることです。「振る舞い」チェック・ボックスのチェックが外れている場合、この suite() メソッドおよびその内容は自動的に生成されます (ユーザーがテスト・エディターを使用してテストを保管するときに更新されます)。このチェック・ボックスにチェック・マークが付いている場合は、ユーザーがこの suite() メソッドをインプリメントする必要があります。
テストでのメソッドの編集について詳しくは、『JUnit テスト・エディター』のトピックを参照してください。
関連概念
JUnit テスト・エディター