TestNG 一款适用于Java的开源测试工具
测试是检查应用程序功能以确保其按照要求正常工作的过程。单元测试在开发人员级别上起作用,通过采取适当措施测试每个单独实体(类或方法)来确保最终产品满足要求。
JUnit使开发人员了解了测试的有用性,特别是单元测试,与任何其他测试框架相比。借助简单、务实和严格的架构,JUnit已经能够“感染”大量开发人员。请查看我们的JUnit教程,以了解其功能。同时,JUnit也有一些缺点,如下所列:
- 最初设计用于启用单元测试,现在用于各种测试。
-
不能进行依赖性测试。
-
配置控制差(setUp/tearDown)。
-
影响力(强迫您扩展类并使用特定的方式命名方法)。
-
静态编程模型(强制您不必要地重新编译)。
-
在复杂项目中管理不同测试套件可能非常棘手。
什么是TestNG
根据TestNG的文档,TestNG的定义如下:
TestNG是一个受JUnit和NUnit启发的测试框架,引入了一些新功能,使其更强大且更易于使用。
TestNG是一个开源自动化测试框架,其中NG代表NextGeneration。TestNG类似于JUnit(特别是JUnit 4),但它不是JUnit扩展。它受JUnit启发而设计。它旨在比JUnit更好,特别是在测试集成类时。TestNG的创建者是Cedric Beust。
消除了较旧框架的大部分限制,TestNG使开发人员能够编写更灵活、更强大的测试。由于它大量借鉴了Java注释(在JDK 5.0中引入)来定义测试,因此也可以向您展示如何在真实的生产环境中使用Java语言的这个新特性。
TestNG的特点
- 支持注解。
-
TestNG使用更多的Java和面向对象的特性。
-
支持测试集成类(例如,默认情况下,不需要为每个测试方法创建一个新的测试类实例)。
-
将编译时的测试代码与运行时的配置/数据信息分离。
-
灵活的运行时配置。
-
引入了“测试组”。一旦你编译了你的测试,你可以让TestNG运行所有的“前端”测试,或者“快速”,“慢速”,“数据库”测试等。
-
支持依赖测试方法、并行测试、负载测试和部分失败。
-
灵活的插件API。
-
支持多线程测试。
系统要求
TestNG是一个用于Java的框架,所以第一个要求是在您的机器上安装JDK。
JDK | 1.7或以上版本。 |
---|---|
内存 | 没有最低要求。 |
磁盘空间 | 没有最低要求。 |
操作系统 | 没有最低要求。 |