没有合适的资源?快使用搜索试试~ 我知道了~
TestNG使Java单元测试轻而易举
0 下载量 79 浏览量
2021-03-04
19:27:27
上传
评论
收藏 422KB PDF 举报
温馨提示
试读
7页
本文内容包括:关于代码TestNG快速起步定义测试组配置方法异常检测结束语JUnit框架是Java语言单元测试当前的一站式解决方案。这个框架值得称赞,因为它把测试驱动的开发思想介绍给Java开发人员并教给他们如何有效地编写单元测试。但是,在过去的几年中,JUnit的改进不大;所以,为当今复杂的环境编写测试已经变成一个越来越困难的任务,即JUnit必须与其他一些补充性测试框架集成起来。在本文中,FilippoDiotalevi介绍了TestNG,这是一个测试Java应用程序的新框架。TestNG不仅确实强大、创新、可扩展、灵活,它还展示了JavaAnnotations(
资源详情
资源评论
资源推荐
TestNG使使Java单元测试轻而易举单元测试轻而易举
火龙果软件工程技术中心
本文内容包括本文内容包括:
关于代码
TestNG 快速起步
定义测试组
配置方法
异常检测
结束语
JUnit 框架是 Java 语言单元测试当前的一站式解决方案。这个框架值得称赞,因为它把测试驱动的开发思想介绍给 Java 开发
人员并教给他们如何有效地编写单元测试。但是,在过去的几年中,JUnit 的改进不大;所以,为当今复杂的环境编写测试已
经变成一个越来越困难的任务,即 JUnit 必须与其他一些补充性测试框架集成起来。在本文中,Filippo Diotalevi 介绍了
TestNG,这是一个测试 Java 应用程序的新框架。TestNG 不仅确实强大、创新、可扩展、灵活,它还展示了 Java
Annotations(JDK 5.0 中的重大新特性)的有趣应用。
在每个现代软件包的构造阶段,测试这一实践都扮演着中心角色。过去那种先编写代码,然后有空的时候再测试(或者根本
不测试)的日子已经一去不返,因为大多数开发人员现在认识到需要采用编码和测试彼此交织、同步推进的软件方法论,以便
尽早发现 bug,在开发过程开始的时候就识别出主要的风险。
JUnit 超过了其他测试框架,推动开发人员理解了测试尤其是单元测试的用途。利用一个相当简单、实用、严格的架构,JUnit
已经能够“传染”大量开发人员。(有关“被测试传染”的更多信息,请参阅 参考资料。) JUnit 用户已经学会了单元测试的一些
基本规则:
每段代码都必须经过测试。
只要有可能,代码的测试必须隔离进行(例如,使用像 模拟对象 这样的技术)。
软件必须容易测试 —— 也就是说, 在编写的时候要想着测试。
但是,随着开发人员对测试的信任增长,JUnit 的简单性和严格性把他们分成两个相反的派别。一方面,有些人坚信 JUnit 的
简单性对于不断地提醒程序员软件也必须保持简单来说是必不可少的(这称为 KISS 原则,代表 keep it simple, stupid);另
一方面,有些人认为 JUnit 不是简单而是简化,所以他们想要从测试框架得到新的高级特性、更大的灵活性和更强大的能力。
JUnit 的一些特殊特性,就是为了满足这个群体的一些具体批评而推出的:
因为 Java 语言的单继承性,所以必须扩展 TestCase 类的限制很大。
无法向 JUnit 的测试方法传递参数,也无法向 setUp() 和 tearDown() 方法传递参数。
执行模型有点奇怪:每次执行一个测试方法的时候,都要重新实例化测试类。
管理复杂项目中的不同测试套件有可能非常复杂。
在本文中,您将学习到如何用这个叫做 TestNG 的新测试框架为应
用程序编写单元测试。TestNG 的灵感来自 JUnit,同时尽量保持后者
的简单性;但是,TestNG 消除了老框架的大多数限制,使开发人员
可以编写更加灵活、更加强大的测试。由于 TestNG 大量借用 Java
Annotation(随 JDK 5.0 引入;有关这个新特性的更多信息,请参阅
参考资料)来定义测试,所以本文也可以向您演示如何在实际的生产
环境中使用 Java 语言的这个新特性。
TestNG 的创造者的创造者
TestNG 的创造者是 Cedric Beust,他在 Java 编程领域
非常出名,是 EJB 3 专家组的成员,也是其他一些流行
的开源项目(例如 EJBGen 和 Doclipse)的创造者。
TestNG 在 Apache 软件许可条款约束下发布,并可从
其 Web 站点下载(请参阅 参考资料 中到该站点和
Cedric 站点的链接)。
关于代码关于代码
为了演示 TestNG 的用法,我要为叫做 Jakarta Common Lang 的这个广泛应用的开源库(其中包含一些处理和操纵字符串、
数字和 Java 对象的有用的类)编写一些单元测试。在下面的 参考资料 一节中,您可以找到 TestNG 和 Jakarta Common
Lang 库的链接;如果您想在自己的机器上随着本文一起练习,这二者都需要下载。
可以在两个不同的包中得到 TestNG:一个包要求 JDK 5.0,另一个包与 Java 语言 1.4 版本兼容。定义测试的时候,它们使
用的语法略有差异:前者使用 JDK 5.0 标注,后者使用旧的 Javadoc 风格的标注。本文使用的是 JDK 5.0 版本,所以在继续
阅读本文之前,需要对标注有基本的了解;您可以在 参考资料 中找到关于这个主题的 developerWorks 资源的链接。但是,
您要知道 只有在编译和运行测试的时候 才需要 JDK 5.0,所以您仍然可以用自己喜欢的编译器来构建应用程序。实际上,您
将用从 Jakarata 项目的 Web 站点下载的相同 JAR 文件来测试 Jakarta Common Lang 库。关于使用 Java 平台 1.4 版本的
TestNG 的更多细节,可以在 TestNG 的 Web 站点上找到。
最后,请单击本文顶部或底部的 Code 图标,下载 j-testng-sample.zip 文件,其中包含一些示例,演示了如何用 TestNG 为
Jakarta Commons Lang 编写单元测试。在里面,可以找到这里给出的大多数代码,还有其他一些示例。阅读本文并不需要这
些代码,但是它可以帮助您更加深入地理解在这里介绍的概念。
TestNG 快速起步快速起步
weixin_38500709
- 粉丝: 6
- 资源: 894
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0