【java 自动化测试】TestNg 介绍

一、TestNg 介绍:

TestNg 优势:

1、比Junit 涵盖的功能更全面的测试框架

2、Junit 更适合隔离性比较强的单元测试

3、TestNg更适合复杂的集成测试

二、注解

BeforeMethod and AfterMethod

每个测试用例之前都会运行

BeforeClass and AfterClass

类之前运行的方法

BeforeSuit and AfterSuit

测试套件  在 BeforeClass 之前运行

运行顺序:

BeforeSuit--BeforeClass--BeforeMethod-- case

三、异常测试

什么时候会用到异常测试?

在我们期望结果为某一个异常的时候 就要用到异常测试

比如:我们传入了某些不合法的参数 ,程序会抛出异常,也就是说预期结果就是一个异常

resources : 是一个放配置文件的文件夹

四:忽略测试

某些不需要执行的测试 可以忽略 不执行   可以加属性:Test(enable = false)

五:超时测试

某些测试如果响应的时间超过多少秒 就抛出超时的异常  可以加属性 Test(timeout = 3000) 单位是毫秒

Thread.sleep(mills = 3000) 线程休眠

六、依赖测试

某一个方法执行要依赖前一个方法的执行 就叫依赖

Test(dependsOnMethods = {‘被依赖的方法名‘})

被依赖的方法报错了,需要依赖的方法就会被忽略掉

七、参数化测试:

1、xml 文件参数化

2、DateProvider 参数化

原文地址:https://www.cnblogs.com/yuanyuan2017/p/11471395.html

时间: 2024-12-14 21:51:08

【java 自动化测试】TestNg 介绍的相关文章

Java自动化测试框架-03 - TestNG之Test Group篇 - 我们一起组团打怪升级(详细教程)

简介 其实这篇文章的group宏哥在上一篇中就提到过,但是就是举例一笔带过的,因此今天专门有一篇文章来讲解Group的相关知识.希望大家茅塞顿开 ,有着更进一步认识和了解测试组. 一.Test Group(测试组) TestNG 允许你将复杂的测试方法归类为不同的组.不仅仅是可以声明某个方法属于某个组,而且还可以让组包含其他的组.这样TestNG可以调用或者请求包含一组特定的组 (或者正则表达式)而排除其他不需要组的集合.这样,如果你打算将测试分成两份的时候,就无需重新编译.这个特点,会给你在划

Java自动化测试框架-09 - TestNG之依赖注入篇 (详细教程)

1.-依赖注入 TestNG支持两种不同类型的依赖项注入:本机(由TestNG本身执行)和外部(由诸如Guice的依赖项注入框架执行). 1.1-本机依赖项注入 TestNG允许您在方法中声明其他参数.发生这种情况时,TestNG将自动用正确的值填充这些参数.依赖注入可以在以下地方使用: 任何@Before方法或@Test方法都可以声明ITestContext类型的参数.任何@AfterMethod方法都可以声明ITestResult类型的参数,该参数将反映刚刚运行的测试方法的结果.任何@Bef

Java垃圾回收介绍(译)

在Java中,对象内存空间的分配与回收是由JVM中的垃圾回收进程自动完成的.与C语言不同的是,在Java中开发者不需要专门为垃圾回收写代码.这是使Java流行的众多特征之一,也帮助了程序员写出了更好的Java应用. 这是一个四部分的系列教程,以了解在Java中垃圾回收的基础, Java垃圾回收介绍 Java垃圾回收如何工作? Java垃圾回收器的类型 监控和分析Java垃圾回收 这篇教程是系列中的第一部分.本篇中会解释一些基本术语,像JDK,JVM,JRE,HotSpot VM,然后去理解JVM

JAVA SSH 框架介绍

SSH 为 struts+spring+hibernate 的一个集成框架,是目前较流行的一种JAVA Web应用程序开源框架. Struts Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的.由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,在过去的一年中颇受关注.Struts把Servlet.JSP.自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套M

java 的简单介绍

一.Java 特点     1.简单: 和C++相比较     2.面向对象     3.跨平台    由于它是先编译后解释 + JVM(屏蔽底层操作系统的差异) 二.程序的运行一般有两种:     1.编译  源文件 ------> 编译器  机器码文件       快  无法跨平台     2.解释  源文件 ------> 解释器  逐行翻译并运行   慢  可以跨平台 三.Java运行机制: 先编译,后解释     .java 源文件  -------> 编译器 .class 字

java面向对象的介绍

面向对象 编程思想 从需求出发 从现实世界出发 对象:一切客观存在的事物 什么都是对象 是什么 is a 继承 属性:有什么 has a 关联(聚合) 方法:能做什么 use a 依赖 面向对象思想:先找到解决问题所需的对象,再通过对象间的联系(3种关系)完成需求 计算机中的对象: 数据(连续的存储空间) 代表了生活中的对象 模拟了现实世界中的对象关系 面向对象的优势: 1.各司其职 封装 2.弱耦合性 多态 接口 3.可重用性 封装 4.可扩展性 继承 类: 对象共性的抽象,是人对对象的认识

Java Web开发介绍

转自:http://www.cnblogs.com/pythontesting/p/4963021.html Java Web开发介绍 简介 Java很好地支持web开发,在桌面上Eclipse RCP谈不上成功,JAVA是主要用在服务器端,和Python一样是极其重要的Web后台开发语言. Java Web应用通常不直接在服务器上运行,而是在Web容器内.容器提供的运行时环境,提供JVM (Java Virtual Machine)运行本地Java应用.容器本身也运行在JVM. 通常Java的

Java线程池介绍

Java线程池介绍 2015-10-24 ImportNew (点击上方公号,可快速关注) 原文:allegro 译文:ImportNew - paddx 链接:http://www.importnew.com/16845.html 根据摩尔定律(Moore’s law),集成电路晶体管的数量差不多每两年就会翻一倍.但是晶体管数量指数级的增长不一定会导致 CPU 性能的指数级增长.处理器制造商花了很多年来提高时钟频率和指令并行.在新一代的处理器上,单线程程序的执行速率确实有所提高.但是,时钟频率

java.util.concurrent介绍

(本文由 blog博主Caoer(草儿)原创,此处为转载. ) java.util.concurrent 包含许多线程安全.测试良好.高性能的并发构建块.不客气地说,创建 java.util.concurrent 的目的就是要实现 Collection 框架对数据结构所执行的并发操作.通过提供一组可靠的.高性能并发构建块,开发人员可以提高并发类的线程安全.可伸缩性.性能.可读性和可靠性. 如果一些类名看起来相似,可能是因为 java.util.concurrent 中的许多概念源自 Doug L