JUnit4新特征

此文章为转载

 

标题: JUnit4新特征
来自:http://vic0777.bokee.com/viewdiary.16059990.html
时间:2007.6.4 14:58
作者:格格巫 

    JUnit4已经出来好久了,可自己一直还在用JUnit3.8.1.正好这两天写程序做单元测试的时候有点问题,就上网看了一下,也顺便了解了一下JUnit4,他和以前的版本有些区别,主要的目的是为了简化单元测试的编写,从而鼓励更多的人编写更多的单元测试,很多改变都是运用了Java5所提供的特性。

1.以前的版本是通过命名约定和反射来定为测试,新版本可以通过@Test  annotation来完成。在旧版本中,testXXX方法是对XXX方法进行测试,而新版本只需在测试方法前头加上@Test,测试方法的名字可以任意。

2.新版本中的@Before annotation和以前的SetUp方法的作用是一样的,用@Before修饰的方法名字可以任意;同样,和tearDown对应的有了@After.这些方法会在调用每个测试方法前(后)调用一次。超类中的@Before方法在子类中的@Before方法之前被调用,而@After方法的调用顺序则相反。

3.类范围的@Before和@After:任何用@BeforeClass修饰的方法都将在该类中的测试方法运行之前刚好运行一次;而任何运用@AfterClass注释的方法都将在该类中的所有测试都运行之后刚好运行一次。

4.测试异常。在Junit4中,可以通过annotation来声明要抛出的异常是预期的,如果该异常没有抛出(或抛出了一个不同的异常),则测试失败,示例代码:
@Test(expected=ArithmeticException.class)
  public void divideByZero() {
    int n = 2 / 0;
}

5.被忽略的测试。通过在测试方法前加@Ignore来忽略该测试方法。

6.指定测试的超时时间。通过annotation为某个测试方法设置一个超时参数,如果测试运行的时间超过设置的值,则测试失败。示例代码:
@Test(timeout=500) public void retrieveAllElementsInDocument() {
    doc.query("//*");
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值