TestNG - 基本注解 - 监听器



@Test 注解将类或方法标记为测试的一部分。

以下是@Test注解支持的属性列表

属性 描述

alwaysRun

如果设置为true,即使此测试方法依赖于失败的方法,它也会始终运行。

dataProvider

此测试方法的数据提供程序的名称。

dataProviderClass

查找数据提供程序的类。如果未指定,则将在当前测试方法的类或其基类之一中查找数据提供程序。如果指定此属性,则数据提供程序方法需要在指定的类中是静态的。

dependsOnGroups

此方法依赖的组列表。

dependsOnMethods

此方法依赖的方法列表。

description

此方法的描述。

enabled

此类/方法上的方法是否启用。

expectedExceptions

测试方法预期抛出的异常列表。如果未抛出异常或抛出的异常与列表中的异常不同,则此测试将被标记为失败。

groups

此类/方法所属的组列表。

invocationCount

此方法应调用的次数。

invocationTimeOut

所有invocationCounts累积时间内此测试所需的最大毫秒数。如果未指定invocationCount,则将忽略此属性。

priority

此测试方法的优先级。较低的优先级将首先安排。

successPercentage

此方法预期的成功百分比

singleThreaded

如果设置为true,则保证此测试类上的所有方法都在同一线程中运行。此属性只能在类级别使用,如果在方法级别使用,则将被忽略。

timeOut

此测试所需的最大毫秒数。

threadPoolSize

此方法的线程池大小。该方法将根据invocationCount指定的多个线程调用。

创建测试用例类

让我们看看如何使用@Test注解。

  • 创建一个java测试类,例如,SimpleTestClass.java/work/testng/src目录下。

  • 向测试类添加一个测试方法sum()。

  • 向sum()方法添加@Test注解。

以下是SimpleTestClass.java的内容。

  import org.testng.annotations.Test;

  public class SimpleTestClass {

  	@Test
  	public void sum()
  	{
  		int sum=0;
  		int a=15;
  		int b=27;
  		sum=a+b;
  		System.out.println("sum="+sum);
  	}
  }

创建testng.xml

接下来,让我们在/work/testng/src目录下创建testng.xml文件来执行测试用例。此文件以XML格式捕获您的所有测试。此文件使您可以轻松地在单个文件中描述所有测试套件及其参数,您可以将其检入代码存储库或通过电子邮件发送给同事。它还可以轻松地提取测试子集或拆分多个运行时配置(例如,testngdatabase.xml 只运行测试您的数据库的测试)。

  <?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd">
  <suite name="Suite">
    <test thread-count="5" name="Test">
      <classes>
        <class name="SimpleTestClass"/>
      </classes>
    </test> <!-- Test -->
  </suite> <!-- Suite -->

使用javac编译测试用例。

/work/testng/src$ javac SimpleTestClass.java TestListener.java

现在,运行testng.xml,它将运行在<test>标签中定义的测试用例。

/work/testng/src$ java org.testng.TestNG testng.xml

验证输出。

  sum=42

===============================================
Suite
Total tests run: 1, Passes: 1, Failures: 0, Skips: 0
===============================================
广告