Junit4的注解
@Before | 初始化方法 |
---|---|
@After | 释放资源 |
@Test | 测试方法,在这里可以测试期望异常和超时时间 |
@Ignore | 忽略的测试方法 |
@BeforeClass | 针对所有测试,只执行一次,且必须为static void |
@AfterClass | 针对所有测试,只执行一次,且必须为static void |
@RunWith | 指定测试类使用某个运行器 |
@Parameters | 指定测试类的测试数据集合 |
@Rule | 允许灵活添加或重新定义测试类中的每个测试方法的行为 |
@FixMethodOrder | 指定测试方法的执行顺序 |
断言
断言是编写测试用例的核心实现方式,即期望值是多少,测试的结果是多少,以此来判断测试是否通过。
assertArrayEquals(expecteds, actuals) | 查看两个数组是否相等。 |
---|---|
assertEquals(expected, actual) | 查看两个对象是否相等。类似于字符串比较使用的equals()方法 |
assertNotEquals(first, second) | 查看两个对象是否不相等。 |
assertNull(object) | 查看对象是否为空。 |
assertNotNull(object) | 查看对象是否不为空。 |
assertSame(expected, actual) | 查看两个对象的引用是否相等。类似于使用“==”比较两个对象 |
assertNotSame(unexpected, actual) | 查看两个对象的引用是否不相等。类似于使用“!=”比较两个对象 |
assertTrue(condition) | 查看运行结果是否为true。 |
assertFalse(condition) | 查看运行结果是否为false。 |
assertThat(actual, matcher) | 查看实际值是否满足指定的条件 |
fail() | 让测试失败 |
@BeforeClass
public static void setUpBeforeClass() throws Exception {
System.out.println("*******setUpBeforeClass*******");
}
@AfterClass
public static void tearDownAfterClass() throws Exception {
System.out.println("*******tearDownAfterClass*******");
}
/**
* 初始化方法
* @throws Exception
*/
@Before
public void setUp() throws Exception {
System.out.println("*******setUp*******");
}
/**
* 销毁方法
*/
@After
public void tearDown() throws Exception {
System.out.println("*******tearDown*******");
}
@Test
public void testAdd() {
assertEquals(15,new Math1().add(7, 8));
}
@Test
public void testReduce() {
new Math1().reduce(8, 3);
}
//限时测试10秒
@Test(timeout=1000)
public void testmult() {
new Math1().mult(9, 8);
}
//异常测试
@Test(expected=ArithmeticException.class)
public void testdiv() {
new Math1().div(9, 0);
}