JAVA自动化测试TestNG框架

1.TestNG简介

JAVA自动化测试最重要的基石。官网:https://testng.org
使用注解来管理我们的测试用例。
发现测试用例
执行测试用例
判断测试用例
生成测试报告

2.创建Maven工程

2.1创建一个maven工程

在这里插入图片描述

2.2设置maven信息

在这里插入图片描述

2.3设置JDK信息

在这里插入图片描述

2.4引入testng依赖

    <dependencies>
        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>7.9.0</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

3.TestNG常用的注解

3.1将类或方法标记为测试的一部分

    @Test
    public void testLogin(){
        System.out.println("测试登录的用例");
    }

属性:

  • @Test(enabled = false) 标识他不是一个用例。
  • @Test(priority = -1) 标识测试方法的执行顺序,数值越小优先级越大。
  • @Test(dependsOnMethods = "方法名")解决测试用例之间的依赖关系。

3.2前后置注解

比如:连接数据库

package com.yufuabu.login;

import org.testng.annotations.*;

public class TestLogin {
    @BeforeSuite
    public void conn1(){
        System.out.println("测试套件前置:相当于整个项目");
    }
    @BeforeTest
    public void conn2(){
        System.out.println("测试模块前置:相当于一个模块");
    }
    @BeforeClass
    public void conn3(){
        System.out.println("测试类前置:相当于一个子模块");
    }
    @BeforeMethod
    public void conn4(){
        System.out.println("测试用例前置:相当于一个用例");
    }


    @Test
    public void test3(){
        System.out.println("test3");
    }
    @Test
    public void test1(){
        System.out.println("test1");
    }
    @Test
    public void test2(){
        System.out.println("test2");
    }


    @AfterSuite
    public void conn11(){
        System.out.println("测试套件后置:相当于整个项目");
    }
    @AfterTest
    public void conn22(){
        System.out.println("测试模块后置:相当于一个模块");
    }
    @AfterSuite
    public void conn33(){
        System.out.println("测试类后置:相当于一个子模块");
    }
    @AfterMethod
    public void conn44(){
        System.out.println("测试用例后置:相当于一个用例");
    }
}

3.3TestNG断言

    @Test
    public void test3(){
        System.out.println("test3");
        Assert.assertEquals("实际结果","预期结果");
    }

在这里插入图片描述

    @Test
    public void test3(){
        System.out.println("test3");
        Assert.assertTrue(true);
    }

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/890133.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

springboot001基于SpringBoot的在线拍卖系统(论文+源码)_kaic

医护人员排班系统 摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了医护人员排班系统的开发全过程。通过分析医护人员排班系统管理的不足&#xff0c;创建了一个计算机管理医护人员排班系统的方案。文章介绍了医…

腾讯云视立方Electron 相关问题

安装相关 trtc-electron-sdk 是否兼容官方 Electron v12.0.1 版本? 兼容的&#xff0c;trtc-electron-sdk 没有特别依赖 elecron 自身的 SDK&#xff0c;所以没有相关的版本依赖。 Electron 下载慢甚至卡住不动&#xff1f; 当开始下载tmp-3320-1-SHASUMS256.txt-6.1.9文件…

JDK17常用新特性

目前国内大部分开发人员都是在使用jdk8&#xff0c;甚至是jdk6&#xff0c;但是随着jdk的更新迭代&#xff0c;jdk8我觉得可能就会慢慢的淡出舞台&#xff0c;随着目前主流框架最新版推出明确说明了不再支持jdk8&#xff0c;也促使我不得不抓紧学习了解一波jdk17的新特性&#…

PDSCH DMRS(解调参考信号)简述

文章目录 PDSCH DMRS&#xff08;解调参考信号&#xff09;简述基本问题例子1. 层数和无数据的DMRS CDM组数量资源元素映射 用户设备假设 PDSCH DMRS&#xff08;解调参考信号&#xff09;简述 这是用来做什么的&#xff1f; 这是一个专门用于解码PDSCH的下行无线信道估计的物理…

【Java学习笔记】多线程

当我们在饭店聚餐时&#xff0c;多人同时吃一道菜的时候很容易发生争抢。例如&#xff0c;上了一道好菜&#xff0c;两个人同时夹这道菜&#xff0c;一人刚伸出筷子&#xff0c;结果伸到的时候菜已经被夹走了。为了避免这种现象&#xff0c;必须等一人 夹完一口后&#xff0c;另…

elementui中el-radio-group内容过长溢出问题

鼠标悬停显示文字 <template> <el-radio-group class"fixed-width-radio-group" v-model"continueruleForm.category" size"mini" fill"#2f54eb" color"#2f54eb" > <el-radio-button label"pr…

Django学习笔记之Django基础学习

Django笔记 提示&#xff1a;这里可以添加系列文章的所有文章的目录&#xff0c;目录需要自己手动添加 例如&#xff1a;第一章 Python 机器学习入门之pandas的使用 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录…

ZYNQ使用XGPIO驱动外设模块(前半部分)

目录 目录 一、新建BD文档&#xff0c;添加ZYNQ处理器 1.BD文档: 2.在Vivado中&#xff0c;BD文件的生成过程通常包括以下步骤&#xff1a; 1)什么是Tcl Console: 3.PL部分是FPGA可编程逻辑部分&#xff0c;它提供了丰富的IO资源&#xff0c;可以用于实现各种硬件接口和功…

【C语言复习】分支和循环

【C语言复习】分支和循环 1. if语句1.1 if1.2 else1.3分支中包含多条语句1.4嵌套if1.5悬空else问题 2.关系操作符3. 条件操作符4.逻辑操作符&#xff1a;&& 、|| 、!4.1 逻辑取反运算符4.2 与运算符4.3或运算符4.4 练习&#xff1a;闰年的判断4.5短路 5.switch 语句5.1…

高性能计算平台(HPC)如何选型

选型高性能计算平台&#xff08;HPC&#xff09;非常复杂&#xff0c;需要考针对行业的痛点等多个因素进行考虑&#xff0c;来确保平台系统能满足特定行业和应用的需求。下面为大家列举了几个方面&#xff0c;大家可以参考。 1.计算需求 首先需要了解你需要处理的数据类型、计算…

持续领先,从IDC报告看联想企业级全栈能力如何加速智能化转型

作者 | 曾响铃 文 | 响铃说 如果问智能化转型浪潮中&#xff0c;哪个行业受到的关注最多&#xff1f;毫无疑问&#xff0c;与产业升级、宏观导向密切相关的制造业一定会是答案之一&#xff0c;智能制造已经成为普遍共识。 这其中&#xff0c;面向制造业的智能化基础设施承担…

矿井人员数据集,用于目标检测,深度学习,采用txt打标签,即yolo格式,也有原文件可以自己转换。总共3500张图片的数据量,划分给训练集2446张,

矿井人员数据集&#xff0c;用于目标检测&#xff0c;深度学习&#xff0c;采用txt打标签&#xff0c;即yolo格式&#xff0c;也有原文件可以自己转换。总共3500张图片的数据量&#xff0c;划分给训练集2446张&#xff1a; ### 矿井人员数据集用于目标检测的详细说明 #### 1. …

JAVA数组基础

数组&#xff1a;相同类型数据的有序集合 1、数组&#xff1a;是引用类型的数据 2、new&#xff1a;关键字&#xff0c;在堆内开辟空间 成员变量&#xff08;堆内存&#xff09;&#xff1a;有默认值 局部变量&#xff08;栈内存&#xff09;&#xff1a;没有默认值&#xff0c…

读书笔记 - 虚拟化技术 - 0 QEMU/KVM概述与历史

《QEMU/KVM源码解析与应用》 - 王强 概述 虚拟化简介 虚拟化思想 David Wheeler&#xff1a;计算机科学中任何问题都可以通过增加一个中间层来解决。 虚拟化思想存在与计算机科学的各个领域。 主要思想&#xff1a;通过分层将底层的复杂&#xff0c;难用的资源虚拟抽象为简…

【Spring Boot React】Spring Boot和React教程 完整版

【Spring Boot & React】Spring Boot和React教程 在B站找到一个不错的SpringBoot和React的学习视频&#xff0c;作者是amigoscode 【Spring Boot & React】Spring Boot和React教程 2023年更新版【Spring Boot React】价值79.9美元&#xff0c;全栈开发&#xff0c;搭…

Ubuntu QT 交叉编译环境搭建

文章目录 下载安装qtCreatornot a valid identifier 的错误 安装g下载并安装交叉编译器下载交叉编译器安装交叉编译器 下载编译 ARM 的Qt平台源码配置arm的QT平台 下载安装qtCreator 去QT下载官网下载对应需要的QT软件。 这里下载5.12.96版本的 改变安装包权限&#xff0c;…

【问题实战】Jmeter中jtl格式转换图片后如何分开展示各个性能指标?

【问题实战】Jmeter中jtl格式转换图片后如何分开展示各个性能指标&#xff1f; 遇到的问题解决方法查看修改效果 遇到的问题 JMeter测试计划中只设置了一个性能监控器jpgc - PerfMon Metrics Collector&#xff1b;在这个监控器中设置几个性能监控指标&#xff0c;比如CPU、Di…

人脸识别face-api.js应用简介

前阵子学习了一下face-api.js &#xff0c;偶有心得&#xff0c;跟大家分享一下。 face-api.js的原始项目是https://github.com/justadudewhohacks/face-api.js &#xff0c;最后一个release是2020年3月22日的0.22.2版&#xff0c;组件较老&#xff0c;API文档很全&#xff0c;…

DS线性表之单链表的讲解和实现(2)

文章目录 前言一、链表的概念二、链表的分类三、链表的结构四、前置知识准备五、单链表的模拟实现定义头节点初始化单链表销毁单链表打印单链表申请节点头插数据尾插数据头删数据尾删数据查询数据在pos位置之后插入数据删除pos位置之后的数据 总结 前言 本篇的单链表完全来说是…

高性能计算应用优化实践之VASP

VASP简介 VASP是最常见的第一性原理计算软件之一。第一性原理计算是基于密度泛函理论&#xff0c;通过选择合适的交换关联赝势(GGA或LDA)&#xff0c;然后基于迭代方法自洽求解Kohn-Sham方程&#xff0c;直到所求出的新的电荷密度与输入的电荷密度在收敛判据范围内&#xff0c…