前言
继上篇环境篇后,本篇主要对TestNG进行介绍,给出基础的两个实例,通过本文后,学会并掌握TestNG测试用例的编写与运行,以及生成美化后的报告。下一篇为HTTP接口实战(气象局接口自动化测试)
目录
二、TestNG简介与基础实例
2.1 TestNG与JUnit对比
为了文章的完整性,从网络摘抄部分文字介绍相关内容。
官网: http://testng.org/doc/index.html
不错的入门介绍: http://www.yiibai.com/testng/
2.1.1 JUnit缺点
初的设计,使用于单元测试,现在只用于各种测试
不能依赖测试
配置控制欠佳(安装/拆卸)
侵入性(强制扩展类,并以某种方式命名方法)
静态编程模型(不必要的重新编译)
不同的适合管理复杂项目中的测试可以是非常棘手
2.1.2 TestNG是什么?
TestNG按照其文档的定义是:
TestNG是一个测试框架,其灵感来自JUnit和NUnit的,但引入了一些新的功能,使其功能更强大,使用更方便。
TestNG是一个开源自动化测试框架;TestNG表示下一代。 TestNG是类似于JUnit(特别是JUnit 4),但它不是一个JUnit扩展。它的灵感来源于JUnit。它的目的是优于JUnit的,尤其是当测试集成的类。 TestNG的创造者是Cedric Beust(塞德里克?博伊斯特)
TestNG消除了大部分的旧框架的限制,使开发人员能够编写更加灵活和强大的测试。 因为它在很大程度上借鉴了Java注解(JDK5.0引入的)来定义的测试,它也可以告诉你如何使用这个新功能在真实的Java语言生产环境中。
2.1.3TestNG的特点
注解
TestNG使用Java和面向对象的功能
支持综合类测试(例如,默认情况下,没有必要创建一个新的测试每个测试方法的类的实例)
独立的编译时间测试代码运行时配置/数据信息
灵活的运行时配置
主要介绍“测试组”。当编译测试,只要问TestNG运行所有的“前端”的测试,或“快”,“慢”,“数据库”等
支持依赖测试方法,并行测试,负载测试,局部故障
灵活的插件API
支持多线程测试
2.2 TestNG注解与基础实例
2.2.1 注解
2.2.2 基础实例1
2.2.2.1 新建JAVA工程
新建: NEW --> JAVA Project --> 输入工程名称 --> Finish
详请Google OR 百度
2.2.2.2 引入Lib库
2.2.2.3检查testng报告配置
2.2.2.4 编写测试用例
package findyou.testcase;
import org.testng.annotations.Test;
public class TestCaseStudy {
// test case 1
@Test
public void testCase1() {
System.out.println("in test case 1");
}
}