TestNG 如何使用
测试是检查应用程序功能以确保其按照要求工作的过程。单元测试在开发者级别起作用,在这里采取足够的措施对每个实体(类或方法)进行测试,以确保最终产品满足要求。
JUnit使开发者了解了测试的有用性,特别是单元测试,与任何其他测试框架相比。JUnit借助一个相当简单、实用和严格的架构,能够“感染”大量开发者。请参考我们的JUnit教程,以深入了解其功能。与此同时,JUnit也有一些缺点,如下所示:
- 最初只设计用于单元测试,现在用于所有类型的测试。
-
无法进行依赖性测试。
-
配置控制较差(setUp/tearDown)。
-
侵入性(强制你扩展类并以特定方式命名方法)。
-
静态编程模型(强制你进行不必要的重新编译)。
-
在复杂项目中管理不同测试套件可能非常棘手。
什么是TestNG
根据它的文档定义,TestNG是一个受JUnit和NUnit启发的测试框架,引入了一些新功能,使其更强大且更易于使用。
TestNG是一个开源的自动化测试框架,其中NG表示Next Generation。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 或以上版本。 |
---|---|
内存 | 无最低要求。 |
磁盘空间 | 无最低要求。 |
操作系统 | 无最低要求。 |