TestNG学习-001-基础理论知识
此 文主要讲述用 TestNG 的基础理论知识,TestNG 的特定,编写测试过程三步骤,与 JUnit4+ 的差异,以此使亲对 TestNG 测试框架能够有一个简单的认知。
希望能对初学 TestNG 测试框架的亲们有所帮助。若有不足之处,敬请大神指正,不胜感激!
TestNG是什么?
TestNG是一个灵感来自于 JUnit 和 NUnit 的一个设计用来简化广泛的测试需求的开源自动化测试框架,其引入了一些新的功能,使其功能更强大,而且易于使用,但是 TestNG 不是 JUnit 的扩展。
它的目的是优于JUnit的,其从单元测试(隔离测试一个类)到集成测试(测试由有多个类多个包甚至多个外部框架组成的整个系统,例如运用服务器),尤其是当测试集成的类。其创造者 Cedric Beust(塞德里克·博伊斯特)消除了大部分的旧框架的限制,使开发人员能够编写更加灵活和强大的测试脚本进行测试工作。同时 TestNG 在很大程度上借鉴了 Java 注解(JDK5.0引入的),以此来定义测试,大大提升了脚本的可读性和易用性。
TestNG的特点
- annotation 注解
- TestNG 使用 Java 面向对象的功能
- 支持综合类测试(例如,默认情况下,没有必要创建一个新的测试每个测试方法的类的实例)
- 独立的编译时间测试代码运行时配置/数据信息
- 灵活的运行时配置
- 主要介绍“测试组”。当编译测试,只要问 TestNG 运行所有的“前端”的测试,或“快”,“慢”,“数据库”等
- 支持依赖测试方法,并行测试,负载测试,局部故障
- 灵活的插件 API
- 支持多线程测试
TestNG 编写测试过程三步骤:
- 编写测试的 业务逻辑并在代码中插入TestNG annotation
- 将测试信息添加到 testng.xml 文件或者 pom.xml 文件中
- 运行 TestNG
TestNG 和 JUnit4+ 的差异
- 设计目标的不同。TestNG 是一个设计用来简化广泛的测试需求的开源测试框架,其不仅仅应用于单元测试,而且可以用于集成测试;对比 JUnit 的只适合用于单元测试,TestNG 无疑走的更远。
- 测试过程的不同。TestNG 和 JUnit4+ 相比,多了一个将测试信息添加到 testng.xml 文件或者 pom.xml 文件,测试信息尤其是测试数据不再写死在测试代码中,好处就是修改测试数据时不需要修改代码/编译了,有助于将测试人员引入单元测试/集成测试。
- 用例是否可依赖。TestNG 中提供了测试用例之间的依赖关系,而 JUnit 每个的测试用力都是一个单独的个体,无法进行用例间的依赖测试
至此,TestNG学习-001-基础理论知识 顺利完结,希望此文能够给初识 TestNG 测试框架的您一份参考。
最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^
TestNG学习-001-基础理论知识的更多相关文章
- Ant学习-001-ant 基础知识及windows环境配置
一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.T ...
- TestNG学习-002-annotaton 注解概述及其执行顺序
此文主要讲述用 TestNG 基础的 annotation (注解)知识,及其执行的顺序,并通过一个 TestNG 简单的实例演示 annotation 的执行顺序. 希望能对初学 TestNG 测试 ...
- java基础理论知识的一些总结
在学习Java初期,由于我们是刚开始接触Java,我们不仅需要牢牢掌握Java的基础理论知识,来为我们后面对Java更深层次的学习打好基础,而且我们需要养成编程人的思想习惯.来我们一起来探索Java基 ...
- jQuery学习笔记 - 基础知识扫盲入门篇
jQuery学习笔记 - 基础知识扫盲入门篇 2013-06-16 18:42 by 全新时代, 11 阅读, 0 评论, 收藏, 编辑 1.为什么要使用jQuery? 提供了强大的功能函数解决浏览器 ...
- 学习javascript基础知识系列第二节 - this用法
通过一段代码学习javascript基础知识系列 第二节 - this用法 this是面向对象语言中的一个重要概念,在JAVA,C#等大型语言中,this固定指向运行时的当前对象.但是在javascr ...
- 学习javascript基础知识系列第三节 - ()()用法
总目录:通过一段代码学习javascript基础知识系列 注意: 为了便于执行和演示,建议使用chrome浏览器,按F12,然后按Esc(或手动选择)打开console,在console进行执行和演示 ...
- (1)写给Web初学者的教案-----学习Web的知识架构
1:学习Web的知识架构 前文中我们简单的介绍了一些关于Web的基本知识,这里任老师再次强调一下凡是用浏览器打开的网站我们就称之为Web应用程序(B/S结构).除此之外其它需要下载安装的软件或是手机 ...
- 学习java接口知识
学习java接口知识 //一个类最多只能有一个直接的父类.但是有多个间接的父类. java是单继承. class ye_01{ String name; } class fu_01 extends y ...
- 软件测试为什么需要学习Linux的知识?Linux学到什么程度?-log5
软件测试为什么需要学习Linux的知识?学到什么程度?-log5 Dotest软件测试学堂-董浩 公司目前90%的服务器操作系统不是Windows,而是Linux(RedHat.Debian.Cen ...
随机推荐
- ECMAScript继承
继承的定义 ECMAScript 实现继承可以从父类入手,所有开发者定义的类都可作为父类,出于安全考虑,本地类和宿主类不能作为父类,因为容易收到恶意攻击 创建只是用于给子类提供通用函数的父类被看作抽象 ...
- FileUpload上传图片直接浏览显示(没有上传按钮如何上传)
1.给FileUpload添加一个onchange事件:FileUpload1.Attributes.Add("onchange", "document.getEleme ...
- FLTK 1.1.10 VS2010 Configuration 配置
Download FLTK 1.1.10 at here. Download VS2010 Download CMake 2.8.12 I assume you've already installe ...
- QDir, QFileInfo 和 QDirIterator 区别
这三个类相互有关联,但是有不尽相同,首先从名字上看,QDir 和 QDirIterator 是针对于文件目录的,也就是文件夹,我们知道,对于一个文件夹,可以包含很多文件,也可以包含其他文件夹,通常是一 ...
- Useful Qt Examples
Canvas API Basic Layouts Camera Example Video Widget Example Image Viewer Example Part 6 - Loading a ...
- excel表中内容如何反排列
如题,我的意思是,比如excel表中有如下内容: 1.红色 2.黄色 3.蓝色 现在我需要一次性全部反向排列,变成 3.蓝色 2.黄色 1.红色 这不是纯数字排序,因为我序号不是自然数的等差数列,其中 ...
- [转]Web Service Authentication
本文转自:http://www.codeproject.com/Articles/9348/Web-Service-Authentication Download source files - 45. ...
- 启用域中对象的"防止意外删除"功能
Get-ADObject -Filter * -SearchBase “OU=VB-User,DC=abc,DC=cn” | Set-ADOobject -ProtectedFromAccidenta ...
- BZOJ 1051 受欢迎的牛(Tarjan缩点)
1051: [HAOI2006]受欢迎的牛 Time Limit: 10 Sec Memory Limit: 162 MB Submit: 4573 Solved: 2428 [Submit][S ...
- eclipse怎么显示代码行数
熟悉java开发的朋友们肯定有这样的经验,那就是在用eclipse进行java开发的时候,没有显示代码的行数,这并不利于我们进行程序的调试.今天,小编就来教大家eclipse怎么显示代码行数 ...