Testng 介绍 (一)

本贴最后更新于 1525 天前,其中的信息可能已经渤澥桑田

1、介绍

官网:TestNG是一个测试框架,旨在简化广泛的测试需求,从单元测试(将一个类与其他类隔离测试)到集成测试(对由多个类,多个程序包甚至几个外部框架组成的整个系统进行测试),例如 应用程序服务器)。

可以看出TestNG致力于简化测试流程。

2、Quick start

  1. 编写测试的业务逻辑,然后在代码中插入TestNG批注。
  2. 在testng.xml文件中添加有关测试的信息(例如,类名,希望运行的组等)。
  3. 运行TestNG。(可以使用eclipse、idea插件,或者命令)

3、Before/After注解

注解 描述
@BeforeSuite @AfterSuite 带注释的方法将在该套件中的所有测试运行之前运行。
带注释的方法将在该套件中的所有测试运行之后运行。
@BeforeTest @AfterTest 带注释的方法将在运行属于标记内的类的任何测试方法之前运行。
带注释的方法将在运行属于标记内的类的任何测试方法之后运行。
@BeforeGroups @AfterGroups 此配置方法将在其之前运行的组的列表。 保证此方法可以在调用属于任何一个组的第一个测试方法之前运行。
此配置方法将在其之前运行的组的列表。 保证此方法可以在属于任何一个组的测试方法运行之后运行。
@BeforeClass @AfterClass 带注释的方法将在调用当前类中的第一个测试方法之前运行。
带注释的方法将在当前类中的所有测试方法运行之后运行。
@BeforeMethod @AfterMethod 带注释的方法将在每个测试方法之前运行。
带注释的方法将在每个测试方法之后运行。

属性

属性名 描述
alwaysRun 设置为true时,无论什么情况都会运行
dependsOnGroups 依赖的组列表
dependsOnMethods 依赖的方法列表
enabled 设置为false时失效
groups 所属组
inheritGroups 如果为true,则此方法将属于@Test使用在类级别上指定的组。
onlyForGroups 仅适用于@BeforeMethod和@AfterMethod。 如果指定,则仅当相应的测试方法属于列出的组之一时,才调用此setup / teardown方法。

4、DataProvider注解

注解 描述
DataProvider 使用此注解为测试方法提供数据。 带注释的方法必须返回一个Object [] [],可以为每个Object []分配测试方法的参数列表。 想要从此DataProvider接收数据的@Test方法需要使用等于此注释名称的dataProvider名称。

属性

属性名 描述
name 数据提供者的名称。 如果未提供,则此数据提供者的名称将自动设置为方法的名称。
parallel 如果设置为true,所有使用此数据提供者的方法将并行运行。

5、Test注解

注解 描述
Test 使用此注解的方法或者类将被TestNG识别并运行。

属性

属性名 描述
alwaysRun 设置为true时,无论什么情况都会运行
dataProvider 数据提供者的名称
dataProviderClass 如果未指定,将在当前测试方法的类或其父类之一上查找数据提供者。 如果指定了此属性,则数据提供者方法在指定的类上必须是静态的。
dependsOnGroups 依赖的组列表
dependsOnMethods 依赖的方法列表
description 说明
enabled 设置为false时失效
expectedExceptions 预期测试方法将引发的异常列表。 如果未引发任何异常或与该列表中的异常不同,则此测试将标记为失败。
groups 所属组
invocationCount 调用次数
invocationTimeOut 所有invocationCount的累积超时时间。
注意:如果未指定invocationCount,则将忽略此属性。
priority 此测试方法的优先级
successPercentage 该方法预期成功的百分比
singleThreaded 如果设置为true,则即使当前正在使用parallel =“ methods”运行测试,也保证该测试类上的所有方法都可以在同一线程中运行。 此属性只能在类级别使用,如果在方法级别使用,则将被忽略。
timeOut 超时时间
threadPoolSize 此方法的线程池的大小。 该方法将从invocationCount指定的多个线程中调用。
注意:如果未指定invocationCount,则忽略此属性
1 操作
luojie 在 2020-08-06 17:39:37 更新了该帖
回帖
请输入回帖内容 ...