Jnit
Annotation
@Before 每个测试方法前执行
@After 每个测试方法后执行
@Test
@BeforeClass
-
@AfterClass
每个测试类只能有一个方法被标注为@BeforeClass 或 @AfterClass并且该方法必须是Public和Static的
其他功能
timeout
@Test(timeout = 1000)
可以避免死循环
expected
@Test(expected = ArithmeticException.class)
测需要抛出指定异常
参数测试
@RunWith(Parameterized.class)
public class SquareTest{
int params;
@Parameters
public static Collection data() ...{
return Arrays.asList(new Object[][]...{
...{2, 4},
...{0, 0},
...{-3, 9},
});
}
public SquareTest(int param, int result) ...{
this.param = param;
this.result = result;
}
@Test
public void square(){
calculator.square(param);
assertEquals(result, calculator.getResult());
}
}
简单来说,就是首先会调用Collect,获得一个collect。
然后每次调用构造函数,之后,再调用Test用例