测试是检查应用程序的功能的过程是否按要求工作,以确保在开发层面,单元测试成图片。单元测试是单一实体(类或方法)的测试。单元测试是非常必要的,每一个软件公司向他们的客户提供高质量的产品。
JUnit 带动开发人员了解测试的实用性,尤其是单元测试的时候比任何其他测试框架。凭借一个相当简单,务实,严谨的架构,JUnit已经能够“感染”了一大批开发人员。 JUnit的特点,可以看看Junit 特点。
其中JUnit缺点:
最初的设计,使用于单元测试,现在只用于各种测试
不能依赖测试
配置控制欠佳(安装/拆卸)
侵入性(强制扩展类,并以某种方式命名方法)
静态编程模型(不必要的重新编译)
不同的适合管理复杂项目中的测试可以是非常棘手.
TestNG按照其文档的定义是:
TestNG是一个测试框架,其灵感来自JUnit和NUnit的,但引入了一些新的功能,使其功能更强大,使用更方便。
TestNG是一个开源自动化测试框架;TestNG表示下一代。 TestNG是类似于JUnit(特别是JUnit 4),但它不是一个JUnit扩展。它的灵感来源于JUnit。它的目的是优于JUnit的,尤其是当测试集成的类。 TestNG的创造者是Cedric Beust(塞德里克·博伊斯特)
TestNG消除了大部分的旧框架的限制,使开发人员能够编写更加灵活和强大的测试。 因为它在很大程度上借鉴了Java注解(JDK5.0引入的)来定义的测试,它也可以告诉你如何使用这个新功能在真实的Java语言生产环境中。
注解
TestNG使用Java和面向对象的功能
支持综合类测试(例如,默认情况下,没有必要创建一个新的测试每个测试方法的类的实例)
独立的编译时间测试代码运行时配置/数据信息
灵活的运行时配置
主要介绍“测试组”。当编译测试,只要问TestNG运行所有的“前端”的测试,或“快”,“慢”,“数据库”等
支持依赖测试方法,并行测试,负载测试,局部故障
灵活的插件API
支持多线程测试