- TestNG 教程
- TestNG - 首页
- TestNG - 概述
- TestNG - 环境配置
- TestNG -编写测试用例
- TestNG - 基本注解
- TestNG - 执行流程
- TestNG - 执行测试
- TestNG - 套件测试
- TestNG - 忽略测试
- TestNG - 分组测试
- TestNG - 异常测试
- TestNG - 依赖测试
- TestNG - 参数化测试
- TestNG - 运行JUnit测试
- TestNG - 测试结果
- TestNG - 注解转换器
- TestNG - 断言
- TestNG - 并行执行
- TestNG - 与Ant集成
- TestNG - 与Eclipse集成
- TestNG - TestNG 与 JUnit 的比较
- TestNG 有用资源
- TestNG - 快速指南
- TestNG - 有用资源
- TestNG - 讨论
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 ===============================================