まず、適当なクラスを作ります。コイツをテスト対象として使います。
package com.kenjih.main; public class DumbCalculator { public int multiply(int x, int y) { int ret = 0; for (int i = 0; i < y; i++) ret += x; return ret; } public int pow(int x, int y) { int ret = 1; for (int i = 0; i < y; i++) ret *= x; return ret; } public int divide(int x, int y) { return x / y; } }
テストクラスは以下のとおり。
package com.kenjih.test; import static org.junit.Assert.*; import org.junit.After; import org.junit.Before; import org.junit.Test; import com.kenjih.main.DumbCalculator; public class TestDumbCalculator { DumbCalculator calculator; @Before // テスト実行前に呼ばれる public void setUp() throws Exception { calculator = new DumbCalculator(); } @After // テスト完了後に呼ばれる public void tearDown() throws Exception { } @Test public void testMultiply() { assertEquals(1000, calculator.multiply(10, 100)); } @Test public void testPow_1() { assertEquals(10000000000L, calculator.pow(10, 10)); } @Test(timeout = 10) // 10ミリ秒以内に処理が完了するか? public void testPow_2() { calculator.pow(10, 10000000); } @Test (expected = ArithmeticException.class) // ArithmeticExceptionをスローするか? public void testDivide() { calculator.divide(10, 0); } }
0 件のコメント:
コメントを投稿