如何在Java中使用TestNG?
测试是检查应用程序功能以确保其按要求工作流程。单元测试在开发人员级别发挥作用,其中采取充分措施来测试每个单个实体(类或方法),以确保最终产品满足要求。
与任何其他测试框架相比,JUnit促使开发人员了解测试(尤其是单元测试)的有用性。JUnit利用相当简单、务实和严格的架构,已经能够“影响”大量的开发人员。请查看我们关于JUnit的教程,以深入了解其功能。同时,JUnit也有一些缺点,如下所示:
最初设计为仅启用单元测试,现在用于各种测试。
无法进行依赖性测试。
配置控制较差(setUp/tearDown)。
侵入式(强制您扩展类并以某种方式命名您的方法)。
静态编程模型(强制您不必要地重新编译)。
在复杂项目中管理不同的测试套件可能非常棘手。
什么是TestNG
根据其文档对TestNG的定义如下:
TestNG是一个测试框架,其灵感来自JUnit和NUnit,但引入了一些使其功能更强大、更易于使用的新功能。
TestNG是一个开源自动化测试框架,其中NG代表下一代。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或更高版本。 |
|---|---|
内存 |
无最低要求。 |
磁盘空间 |
无最低要求。 |
操作系统 |
无最低要求。 |
数据结构
网络
关系数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP