首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

TestNG 使 Java 单元测试轻而易举(4)

TestNG 使 Java 单元测试轻而易举(4)

异常检测使用 TestNG,您可以非常简单、非常容易地检测异常的发生。很明显,用 JUnit 也可以做这件事,但是正如您在清单 6 中的示例中所看到的,使用 TestNG 的               @ExpectedExceptions标注可以使代码编写惊人地容易和简单。            @ExpectedExceptions标注指明框架能够容忍抛出的            NumberFormatException异常,所以不应当被当作是故障。要查看在某行代码中是否抛出异常,您可以直接在这行代码之后加入               assert false语句。这意味着 只有在指定行中抛出特定类型的异常的时候,您才会通过测试。
清单 6. 用 TestNG            进行异常检测
1
2
3
4
5
6
7
8
9
10
public class  NumberUtilsTest
{
    @Test(groups = {"tests.math"})
    @ExpectedExceptions(NumberFormatException.class)
    public void test()
    {
        NumberUtils.createDouble("12.23.45");
        assert false;  //shouldn't be invoked
    }
}




结束语在本文中,我提供了 TestNG 的快速实用介绍,目的是展示如何开始编写单元测试。但是,它不是一份完整的参考手册。TestNG 还有许多其他非常有用的有趣特性:
  • 可以向测试方法和配置方法传递参数,可以用标注或在 XML 配置文件中声明参数。
  • 可以在 TestNG 下用“兼容模式”运行过去运行良好的 Junit 测试。
  • 可以在测试组之间建立依赖性,决定它们的执行顺序。
要了解这个框架的所有潜力,有必要参阅 TestNG 的文档(参阅 )。
所有这些特性,与用于定义测试的 Java 标注一起,使整个测试过程更加简单、更加灵活。编写测试必须遵守的规则 很少;除此之外,您绝对可以自由选择自己喜欢的测试策略。
在使用 TestNG 时最明显的是,这个模板已经是编写单元测试的一个好选择了,而且,在设计上,它与其他库和工具的集成非常简单,所以它未来的发展会给开发人员带来一些有趣的新东西。
返回列表