Java单元测试框架-1-TestNg初识

2023-11-13

目录

1.1xUnit整体作用

1.2着重介绍Junit&TestNg

1.3TestNg测试框架介绍

1.4Eclipse安装TestNG

1.5TestNg测试


1.1xUnit整体作用

xUnit是各种代码驱动测试框架的统称,这些框架可以测试软件的不同内容。

主要优点是提供了一个自动化测试的解决方案,不需要多次编写重复的测试代码,也不必记录测试结果
xUnit用于测试的四要素:

  • 1:测试目标(对象)
  • 2:测试集
  • 3:测试执行(过程)
  • 4:断言

 

1.3TestNg测试框架介绍

TestNG是java中的一个单元测试框架,类似Junit,是一种注解式的编程方式,支持并行运行,数据驱动等,即可以用来做单元测试,也可以用来做集成测试。

TestNg官网文档:TestNg官网   TestNg官网文档:https://testng.org/doc/documentation-main.html

1.4Eclipse安装TestNG

这里我的Eclispe是4.9.0版本,可以直接从Eclipse Marketplace处下载

点击Help->Eclipse Marketplace 搜索TestNg

我这里已经安装了,如果没安装可以根据提示进行安装,我是直接将TestNg拖动进来就可以安装了。

安装成功后重启Eclispe,可以在Windows->Preferences->TestNg看到,此时就可以创建TestNgClass

1.5TestNg测试

创建一个最基本的TestNG 测试Class 

TestFirst.java

import org.testng.annotations.Test;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeSuite;
import org.testng.annotations.AfterSuite;

public class TestFirst {
  @Test
  public void Test() {
	  
  }
  @BeforeMethod
  public void beforeMethod() {
	  System.out.println("----beforeMethod----");
  }

  @AfterMethod
  public void afterMethod() {
	  System.out.println("----afterMethod----");
  }

  @BeforeClass
  public void beforeClass() {
	  System.out.println("----beforeClass----");
  }

  @AfterClass
  public void afterClass() {
	  System.out.println("----afterClass----");
  }

  @BeforeTest
  public void beforeTest() {
	  System.out.println("----beforeTest----");
  }

  @AfterTest
  public void afterTest() {
	  System.out.println("----afterTest----");
  }

  @BeforeSuite
  public void beforeSuite() {
	  System.out.println("----beforeSuite----");
  }

  @AfterSuite
  public void afterSuite() {
	  System.out.println("----afterSuite----");
  }

}

注意查看执行顺序

beforeSuite->beforeTest->beforeClass->beforeMethod->afterMetod->afterClass->afterTest->afterSuite

从上面的运行结果可以看出,TestNg的测试用例组织结构如下:

一个TestSuite由多个Test组成

一个Test由多个Class组成

一个Class由多个Method组成

当运行不同层级的测试用例时,可以通过不同的注解实现测试前的初始化工作,测试用例的执行和测试执行后的环境清理工作。测试运行前,要打开文件,启动数据库,读取参数配置,测试结束后关闭文件,关闭数据库,清理运行环境等。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java单元测试框架-1-TestNg初识 的相关文章

  • JAVA单元测试框架-6-Enable priority

    1 enabled属性 在Testng中 如果方法前面添加了 Test注释 然后没有其他的属性 那么默认这个用例会被自动运行 当测试用例没有书写完成 或者不想测试时 可以采用注解 Test enable false 来禁止测试用例的执行 E
  • jmeter JDBC数据库连接与数据库压测

    数据库配置 数据库配置 JDBC Connection COnfiguration 连接池管理 variable Name for created poll 创建数据池的名称 这里的名称 下面的jdbc要一致 Max Number of C
  • Charles web抓包

    首先打开Charles调试 如果关闭web端 如图所示 前面什么也没有 抓取浏览器数据包 一 打开Charles在Help里安装证书 二 点击安装证书 三 存储位置选择本地计算机 四 点击将所有的证书都放入下列存储 五 点击浏览 点击受信任
  • Allure美化测试报告

    1 1 Allure介绍 Allure是一款轻量级并且非常灵活的开源测试报告框架 它支持绝大多数测试框架 例如TestNG Pytest JUint等 它简单易用 易于集成 1 2 Allure下载 到git上下载指定版本的Allure G
  • Jmeter录制脚本

    性能关注点 接口响应时间 50毫秒 1000毫秒 吞度量 10000万每天 tPs 每秒处理事务数 压测需求与业务操作步骤 压测对象 http news baidu com 压测页面 首页 国际频道 财经频道 步骤 访问首页 单击 国际频道
  • JAVA单元测试框架-10-断言Assert

    使用Assert对结果进行断言 这是testng里的断言方式 常用断言 assertTrue assertSame assertEquals Test public void TestAssert Assert assertEquals 2
  • JAVA单元测试框架-9-testng.xml管理依赖

    在testng xml里配置依赖管理 先写个测试用例 Test description 测试分组 groups operation public void TestGroupAdd System out print String value
  • Charles 弱网测试

    知识了解 网络延时 网络延时指一个数据包从用户的计算机发送到网站服务器 然后再立即从网站服务器返回用户计算机的来回时间 通常使用网络管理工具PING Packet Internet Grope 来测量网络延时 由于互联网络的复杂性 网络流量
  • jmeter-常用的几种参数化

    jmeter常见的几种参数化方式 jmeter 的csv 数据文件设置 线程组 gt 配置元件 gt Csv数据文件配置 Filename 文件名 File encoding 编码格式 variable Names 参数名称 后面可以使用v
  • JAVA单元测试框架-11-异常测试

    预计测试会出现异常 可以使用 Test expectedExceptions 来验证是否有异常抛出 import org testng Reporter import org testng annotations DataProvider
  • 接口自动化测试框架HttpClient-2-GetPost请求

    Get请求 1 请求Url 2 请求参数 3 请求header 4 响应结果断言 5 响应数据提取 public static void getDefault String url 创建一个可关闭的HttpClient对象 Closeabl
  • JAVA单元测试框架-12-java代码重复执行失败的测试用例

    在使用testng执行测试用例时候 都会遇到测试用例执行失败 怎么再次执行失败的测试用例呢 官网给出了java代码执行测试的案例 每次执行完用例后会在test output目录路径下保存执行失败的测试用例 可以再次执行失败的测试用例来达到重
  • JAVA单元测试框架-7-invocationCount和invocationTimeOut

    1 invocationCount 字面意思就是调用的次数统计 就是这个测试用例被调用执行的次数 2 invocationTimeOut 字面意思是调用的超时 设置一个最大的毫秒数来计算执行多次后总共耗时多少 耗时值不能超过设置的最大毫秒数
  • JAVA单元测试框架-5-timeOut测试

    这篇先来介绍 Test注释下的一个属性 timeOut 主要用来超时判断 详细点说 如果哪个测试方法需要监听执行的时间 那么就可以考虑采用timeOut属性 例如 实际的接口测试中 加入登录接口时间不能超过3秒中 下面来看看如何监控这个方法
  • Java单元测试框架-1-TestNg初识

    目录 1 1xUnit整体作用 1 2着重介绍Junit TestNg 1 3TestNg测试框架介绍 1 4Eclipse安装TestNG 1 5TestNg测试 1 1xUnit整体作用 xUnit是各种代码驱动测试框架的统称 这些框架
  • jmeter分布式压测 linux

    主机master修改 jmeter properties server rmi ssl disable true server port 1099 remote hosts 192 168 36 131 1099 slave分机的ip地址
  • JAVA单元测试框架-14-实现TestNG失败案例重跑

    前面是通过java代码指定重跑 本节是讲解通过实现IAnnotationTransformer接口实现失败案例重跑 创建MyRetry 实现IRetryAnalyzer 接口 package Listener import org test
  • Mock框架应用(三)-Mock Post请求

    不带参数的post请求 description 不含参数的post请求 request uri post method post response text 不含参数的post请求 带参数的post请求 配置Json 并启动moco服务 d
  • JAVA单元测试框架-13-TestNG中的Listener监听

    使用TestNG中的Listener完成监听测试 通过实现ITestListener里面的方法完成测试过程监听 public class TestListenner implements ITestListener Override pub
  • jmeter 安装配置

    一 进入官网 http jmeter apache org 1 第一步进入官网如下图 2 选择进行下载 下载下来为一个压缩包 解压即可 3 下载完成后 然后就进行解压 要注意版本对应的java要求 解压完成后就要配置环境变量了 4 环境变量

随机推荐

  • 手机黑屏摄像app_手机黑屏摄像软件下载-手机黑屏摄像持续拍摄app1.3安卓版下载_骑士下载...

    手机黑屏摄像持续拍摄app这是一款支持黑屏状态下拍摄的软件 如果你有这方面的需要 可以来试试的 不会让人发现你在拍摄 软件中有黑屏模式 你打开就可以了 使用起来简单 操作也方便 需要的朋友赶紧下载试试吧 软件介绍 能够根据手机上黑屏状态下还
  • 实践指南-前端性能提升 270%

    一 背景 当我们疲于开发一个接一个的需求时 很容易忘记去关注网站的性能 到了某一个节点 猛地发现 随着越来越多代码的堆积 网站变得越来越慢 本文就是从这样的一个背景出发 着手优化网站的前端性能 并总结出一套开发习惯 让我们在日常开发时 也保
  • 无网环境下安装Mysql8.0

    在redhat7 6操作系统上安装mysql8 0服务 服务器只有内网 没有外网 记录一下安装过程 一 软件准备 1 1 下载mysql安装包 下载地址 https dev mysql com downloads mysql 1 2 准备依
  • Vue3 ERROR Error: Cannot find module ‘vue-loader-v16/package.json‘

    Vue3 ERROR Error Cannot find module vue loader v16 package json Vue3 npm run serve错误 1 主要错误信息 2 Vue3项目 运行环境 3 Vue3项目运行操作
  • 金山办公慢下来了?

    大数据产业创新服务媒体 聚焦数据 改变商业 只有长期主义者 才能成为时间的朋友 在笔者看来 越来越向SaaS模式倾斜的金山办公便是 长期主义 的代表之一 近日 金山办公 股票代码 688111 发布2023年半年度报告 报告显示 2023上
  • 如何用python提取音频

    可以使用 Python 的多种库来提取音频 其中一种方法是使用 ffmpeg 库 首先 需要安装 ffmpeg 库 可以使用以下命令进行安装 pipinstall ffmpeg 然后 可以使用以下代码来提取音频 import ffmpeg
  • 一个在ASP.NET中利用服务器控件GridView实现数据增删改查的例子

    备注 这是我辅导的一个项目开发组的一个例子 用文章的方式分享出来 给更多的朋友参考 其实我们这几年的项目中 都不怎么使用服务器控件的形式了 而是更多的采用MVC这种开发模式 但是 如果项目的历史背景是用服务器控件的 也不妨继续沿用 以免变动
  • Rust引入外部包,VsCode引入失败,Blocking waiting for file lock on package cache lock

    引入外部包出错的解决方法 VsCode导入包后一直转圈 首先要停掉Rust server Ctrl Shift P 快捷键 输入Stop那个 停掉服务 改用命令行 像这样 可以看到它说 Blocking waiting for file l
  • ChatGLM环境配置

    目的 ChatGPT令人震撼的冲击下 笔者转向NLM的Transformer模型 ChatGLM作为清华开源的大语言模型 笔者尝试了其环境配置 为相关理论学习奠定基础 本文用于备忘与学习 无商业用途 参考 ChatGLM的源码下载链接 Gi
  • 总结24个Python接单赚钱的平台,兼职月入5000+

    如果说当下什么编程语言最靠谱或者比较适合搞副业 答案肯定100 是 Python python是所有语法中最简单易上手的语言 不需要特别的的英语词汇量 逻辑思维也不需要很差就能上手 而且学会了之后就能编写代码爬取各种数据 制作各种图表 提升
  • Android学习路线

    Android学习路线 绝对干货
  • CVE-2021-44228-log4j2复现详细版本-简单教程。

    0x01 前言 昨晚爆出的log4j rce 是通过lookup触发的漏洞 但jdk1 8 191以上默认不支持ldap协议 对于高版本jdk 则需要一定的依赖 不过为了给大家最简单的说明 我这里还是用jdk1 8 144的版本来运行 0x
  • Pytorch-torch.nn.identity()方法详解

    Pytorch torch nn identity 方法详解 identity模块不改变输入 直接return input 一种编码技巧吧 比如我们要加深网络 有些层是不改变输入数据的维度的 在增减网络的过程中我们就可以用identity占
  • Web 前端常用正则校验规则

    Web 前端常用正则校验规则 作为 Web 前端开发 常用的正则校验规则有很多 下面是一些常见的示例 1 校验手机号码 手机号码的正则表达式可以根据不同国家和地区的手机号码格式进行调整 以下是中国大陆的手机号码正则表达式 const reg
  • 关于C语言fgets函数要注意的地方

    关于C语言fgets函数要注意的地方 fgets函数一般用来读入文件内容 每次读一行 然后存入缓存区 有人问那怎么读下一行 直至读完整个文本文件的内容 其实很简单 只要循环用fgets就行 如果你这次把第一行读完了 那么下一次文件指针就会从
  • 关于springboot中编写继承JpaRepository这个接口类时出现报红,不能继承这个接口的问题之解决方法

    这是第二次遇到这个问题只能怪自己之前没有习惯去记录遇到的问题 这次还是关于Jpa的 真的是在找博客的时候看到好多说在入口类里添加 EnableJpaRepositories basePackages xxx xxx xxx 这个注解的 我就
  • el-table-column中运用三元运算符

    在el table column中是不能直接运用三元运算符的 需要转化一下
  • Nacos2.2版本发布了,我为其贡献了几行代码并适配了PostgreSQL插件

    目录 一 背景 二 个人贡献 三 Nacos使用适配的PostgreSQL插件 3 1 插件源码工程项目结构 3 2 打包加载插件 3 3 修改配置文件为PostgreSQL连接字符串 3 4 导入数据库脚本文件 四 总结 一 背景 Nac
  • Springmvc 学习心得

    1 三层架构的介绍和mvc的设计模式 Springmvc的特点 清晰的角色划分 每个功能模块对应一个组件 1 前端控制器 DispatchServlet 2 处理器映射器 HanderMapping 根据 requestMapping 找到
  • Java单元测试框架-1-TestNg初识

    目录 1 1xUnit整体作用 1 2着重介绍Junit TestNg 1 3TestNg测试框架介绍 1 4Eclipse安装TestNG 1 5TestNg测试 1 1xUnit整体作用 xUnit是各种代码驱动测试框架的统称 这些框架