JUnit自动化单元测试(三):各常用注解和测试函数详细讲解
2017-05-22 14:04
519 查看
@Test:将一个方法修饰成一个可测试的方法;只有@Test修饰之后,这个方法才会被JUnit执行。
@Test(expected=XXException.class):表示这个方法一定会抛出某个异常;如果没有抛出该异常则测试失败。
@Test((timeout=XX):表示这个方法执行的超时时间,单位毫秒;如果这个方法在规定时内还没结果,则测试失败。
@Before:会在每一个测试方法被运行前执行一次;一般用于初始化测试数据。注意:有多少个@Test修饰的方法就会执行多少次。
@After:会在每一个测试方法运行后被执行一次;一般用于注销测试数据。注意:有多少个@Test修饰的方法就会执行多少次。
@BeforeClass:它会在所有的方法运行前执行,static修饰;一般用于测试需要读取文件数据时。注意:不管有多少个@Test修饰的方法只执行一次。
@AfterClass:它会在所有的方法运行结束后执行,static修饰;一般用于断开文件连接。注意:不管有多少个@Test修饰的方法只执行一次。
@Ignore:所修饰的测试方法会被测试运行器忽略;当方法还没写完时可用,写好之后删掉@Ignore即可开始测试。
@RunWith:可以更改测试运行器 org.junit.runner.Runner;当需要多个或自定义的运行器时用,下一篇具体讲解。
注解大致是就这么多,此外还有一些常用的断言函数:
AssertEquals:断言两个结果相等;
AssertArrayEquals:断言两个数组相等;
AssertNotEquals:断言两个结果不相等;
AssertSame:判断两个对象是否为同一个,不同于equals这里是使用“==”判断;
AssertTrue:断言结果为真;
AssertFalse:断言结果为假;
AssertNull:断言结果为空;
AssertNotNull:断言结果不为空;
AssertThat:使用Matcher做自定义的校验;
如果想了解更多的测试函数,请自行查阅Assert API,这里就不详细说明了。
@Test(expected=XXException.class):表示这个方法一定会抛出某个异常;如果没有抛出该异常则测试失败。
//测试代码 @Test(expected = ArithmeticException.class) public void testDiv() { int result = calcuate.div(6, 0); // 除法中,除数为0,抛出ArithmeticException }
@Test((timeout=XX):表示这个方法执行的超时时间,单位毫秒;如果这个方法在规定时内还没结果,则测试失败。
//测试代码 @Test(timeout = 3000) public void testTimeout () { while (true) { try { Thread.sleep(2000); } catch (InterruptedException e) { e.printStackTrace(); } } }
@Before:会在每一个测试方法被运行前执行一次;一般用于初始化测试数据。注意:有多少个@Test修饰的方法就会执行多少次。
@After:会在每一个测试方法运行后被执行一次;一般用于注销测试数据。注意:有多少个@Test修饰的方法就会执行多少次。
@BeforeClass:它会在所有的方法运行前执行,static修饰;一般用于测试需要读取文件数据时。注意:不管有多少个@Test修饰的方法只执行一次。
@AfterClass:它会在所有的方法运行结束后执行,static修饰;一般用于断开文件连接。注意:不管有多少个@Test修饰的方法只执行一次。
@Ignore:所修饰的测试方法会被测试运行器忽略;当方法还没写完时可用,写好之后删掉@Ignore即可开始测试。
//测试代码 @Ignore @Test public void testIgnore () { System.out.println("我会被忽略,不会执行"); }
@RunWith:可以更改测试运行器 org.junit.runner.Runner;当需要多个或自定义的运行器时用,下一篇具体讲解。
注解大致是就这么多,此外还有一些常用的断言函数:
AssertEquals:断言两个结果相等;
AssertArrayEquals:断言两个数组相等;
AssertNotEquals:断言两个结果不相等;
AssertSame:判断两个对象是否为同一个,不同于equals这里是使用“==”判断;
AssertTrue:断言结果为真;
AssertFalse:断言结果为假;
AssertNull:断言结果为空;
AssertNotNull:断言结果不为空;
AssertThat:使用Matcher做自定义的校验;
如果想了解更多的测试函数,请自行查阅Assert API,这里就不详细说明了。
相关文章推荐
- java单元测试工具:JUnit4(二)——测试失败、运行流程及常用注解
- JUnit自动化单元测试(二):简单测试实例讲解
- Java单元测试工具:JUnit4(三)——JUnit详解之运行流程及常用注解
- junit常用注解详细说明
- Java单元测试工具:JUnit4——JUnit详解之运行流程及常用注解
- Java单元测试工具:JUnit4(三)——JUnit详解之运行流程及常用注解
- junit常用注解详细说明
- junit常用注解详细说明
- JUnit自动化单元测试(四):@RunWith测试套件运行器的使用
- Java单元测试工具:JUnit4(三)——JUnit详解之运行流程及常用注解
- junit常用注解详细说明
- junit常用注解详细说明
- JUnit自动化单元测试(一):生成测试类
- Java单元测试工具:JUnit4(三)——JUnit详解之运行流程及常用注解
- junit常用注解详细说明
- junit常用注解详细说明
- junit常用注解详细说明
- JUnit自动化单元测试(五):参数化测试
- Java单元测试进阶之单元测试利器JUnit(测试自动化)
- 详细讲解黑客常用的远程控制木马