Java_TestNg

TestNg

前言

一些如 依赖测试,分组测试 等功能

支持特性

复制代码
注解支持
忽略测试
超时测试
套件测试
异常测试
分组测试
参数化支持
数据驱动
依赖测试

使用步骤

1.引入库

代码如下(示例):

复制代码
<dependencies>
    <dependency>
        <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>
        <version>7.3.0</version>
    </dependency>
</dependencies>

常用注解

@Test注解

放在类上,整个类内的方法都被运行

放在 方法上,只运行该方法

@BeforeSuite @AfterSuite

运行定义在套件中的方法之前,先运行被 @BeforeSuite 标记的方法

在 TestSuite 中定义具体要执行的方法.

在 TestSuite 中方法执行前,执行 被 @BeforeSuite 标记的方法

@AfterClass @BeforeClass

在调用指定类中所有测试方法前,运行一次.

在调用指定类中所有测试方法后,运行一次

类中任何方法运行,都会运行该方法一次

@AfterTest @BeforeTest

@AfterGroups @BeforeGroups

@BeforeMethod @AfterMethod

@DataProvider

可以创建依赖的数据并且返回给 @Test(dataProvider = "provider") 使用

@Factory

采用工厂方法创建测试数据

左边的@Test标记的方法,会调用右边的@Factory标记的方法所创造的实例.

@Listeners

监听测试方法的开始 结束 执行结果

具体的实现方法

还有

java 复制代码
onStart
onFinsh

方法可以重写

@Patameters

给测试方法传递参数的注解

在 testngxxx.xml 里面配置参数值

具体的方法

断言

相等 不相等

true/false

null / !null

equals / !equals

忽略测试

@Test(enable = false)

此测试方法会忽略 不执行

group

依赖测试

@Test(dependsOnMethods = {"Test2"})

被依赖的如果报错.则依赖方不会执行.

A 依赖了B. B报错,则A不会执行

相关推荐
karry_k10 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k10 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
SamDeepThinking14 小时前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
她的男孩17 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
荣码18 小时前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python
plainGeekDev20 小时前
Gson → kotlinx.serialization
android·java·kotlin
小bo波1 天前
Java Swing 图形用户界面实验 —— 从算术练习到游戏开发的完整实践
java·课程设计·gui·游戏开发·扫雷·swing
咖啡八杯1 天前
GoF设计模式——备忘录模式
java·后端·spring·设计模式