测试套件是用于测试软件程序的行为或一组行为的测试用例集合。

在TestNG中,我们无法在测试源代码中定义一个套件,但它可以由一个XML文件表示,可以灵活配置要运行的测试。

套件用<suite>标签定义,可以包含一个或多个测试类,用<test>标签定义

下面演示了一个测试套件的xml文件中包含多个<test>:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<!-- suite为根标签,一个testng.xml中只有一个suite节点 -->
<suite name="suiteTest">
<!-- 一个suite下面有N个test标签 -->
<test verbose="2" preserve-order="true" name="login">
<classes>
<class name="com.janson.suite.SuiteConfig"/>
<class name="com.janson.suite.LoginTest"/>
</classes>
</test>
<test verbose="2" preserve-order="true" name="pay">
<classes>
<class name="com.janson.suite.SuiteConfig"/>
<class name="com.janson.suite.PayTest">
<!-- 只执行该类下面的某个方法 -->
          <!-- exclude标签会排除某个方法 -->
<methods>
<include name="weiXinPay"/>
</methods>
</class>
</classes>
</test>
</suite>

com.janson.suite.SuiteConfig类

import org.testng.annotations.*;

public class SuiteConfig {
@BeforeSuite
public void beforeSuite() {
System.out.println("beforeSuite运行");
} @AfterSuite
public void afterSuite() {
System.out.println("afterSuite运行");
} @BeforeTest
public void beforeTest() {
System.out.println("beforeTest运行");
} @AfterTest
public void afterTest() {
System.out.println("afterTest运行");
}
}

com.janson.suite.LoginTest类:

package com.janson.suite;

import org.testng.annotations.Test;

public class LoginTest {
@Test
public void loginTaobao() {
System.out.println("淘宝登录成功!");
}
}

com.janson.suite.PayTest类

package com.janson.suite;

import org.testng.annotations.Test;

public class PayTest {
@Test
public void alipay() {
System.out.println("支付宝支付成功!");
} @Test
public void weiXinPay() {
System.out.println("微信支付成功!");
}
}

在suiteTest.xml中右击,run...

执行结果如下:

beforeSuite运行
beforeTest运行
淘宝登录成功!
afterTest运行
beforeTest运行
微信支付成功!
afterTest运行
afterSuite运行

TestNG套件测试(一)的更多相关文章

  1. TestNG套件测试

    TestNG套件测试 测试套件的测试是为了测试软件程序的行为或一系列行为的情况下,是一个集合.在TestNG,我们不能定义一套测试源代码,但它代表的套件是一个XML文件执行特征.这也允许灵活的配置要运 ...

  2. TestNG套件测试(二)

    在xml中指定要运行的整个包来执行套件测试 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ...

  3. TestNG系列之二:TestNG套件测试

    测试套件的测试是为了测试软件程序的行为或一系列行为的情况下,是一个集合.在TestNG,我们不能定义一套测试源代码,但它代表的套件是一个XML文件执行特征.这也允许灵活的配置要运行的测试.套件可以包含 ...

  4. testng入门教程5TestNG套件测试

    TestNG套件测试 测试套件的测试是为了测试软件程序的行为或一系列行为的情况下,是一个集合.在TestNG,我们不能定义一套测试源代码,但它代表的套件是一个XML文件执行特征.这也允许灵活的配置要运 ...

  5. Java自动化测试框架-10 - TestNG之测试结果篇

    1.-测试结果 1.1-成功,失败和断言 测试被认为是成功的,如果它不引发任何异常完成,还是它扔的预期异常(请参阅文档expectedExceptions属性上找到的@Test注释). 您的测试方法通 ...

  6. TestNG之测试执行后没有生成默认测试报告(IDEA)

    使用IDEA+TestNG进行测试,没有生成 测试报告,是因为没有勾选监听器使用默认报告,具体操作如下: “Run” -> "Edit Configurations" -&g ...

  7. TestNG 搭建测试框架 自动化测试

    框架层级及基本组件:    参考:https://www.cnblogs.com/jier888/p/8998724.html Java作为开发语言 Maven管理项目及Jar包 Testng作为测试 ...

  8. Junit 4.x 单元测试,参数化测试,套件测试 实例

    对下面三个类进行单元测试 ,组成套件测试. public class Calculate { public int add(int a, int b) { return a + b; } public ...

  9. JUnit套件测试实例

    “套件测试”是指捆绑了几个单元测试用例并运行起来.在JUnit中,@RunWith 和 @Suite 这两个注解是用来运行套件测试. 下面的例子演示这两个单元测试:JunitTest1 和 Junit ...

随机推荐

  1. YTU 2899: D-险恶逃生 I

    2899: D-险恶逃生 I 时间限制: 1 Sec  内存限制: 128 MB 提交: 130  解决: 55 题目描述 Koha被邪恶的巫师困在一个m*n的矩阵当中,他被放在了矩阵的最左上角坐标( ...

  2. 杂项-Java:Struct

    ylbtech-杂项-Java:Struct Struts是Apache软件基金会(ASF)赞助的一个开源项目.它最初是Jakarta项目中的一个子项目,并在2004年3月成为ASF的顶级项目.它通过 ...

  3. E20170610-hm

    presence  n. 出席; 仪表; 风度; 鬼魂,神灵; defence   n. 防御; 辩护; 防御工事; 后卫; phyle  n. 种族,宗族; race  n. 赛跑; 民族; 人种; ...

  4. vue中父组件传数据给子组件

    父组件: <template> <parent> <child :list="list"></child> //在这里绑定list对 ...

  5. bzoj 1673: [Usaco2005 Dec]Scales 天平【dfs】

    真是神奇 根据斐波那契数列,这个a[i]<=c的最大的i<=45,所以直接搜索即可 #include<iostream> #include<cstdio> usin ...

  6. 10.11 NOIP模拟题(1)

    /* 离散化 差分 */ #include<bits/stdc++.h> #define N 4000007 using namespace std; int n,ans; int tmp ...

  7. Js 使用小技巧总结(1)

    1.Js 的时间控制,小于初始时间,大于截止时间 <script type="text/javascript">        window.onload = Game ...

  8. 贪心 FZU 2013 A short problem

    题目传送门 /* 题意:取长度不小于m的序列使得和最大 贪心:先来一个前缀和,只要长度不小于m,从m开始,更新起点k最小值和ans最大值 */ #include <cstdio> #inc ...

  9. 二分图最大匹配(匈牙利算法) UVA 10080 Gopher II

    题目传送门 /* 匈牙利算法:这题比UVA_670简单,注意是要被吃的鼠的最少个数,套模板 */ #include <cstdio> #include <algorithm> ...

  10. 全面学习ORACLE Scheduler特性(4)创建和管理Schedule

    三.使用Schedules 10g 中新推出的SCHEDULER可能确实会让很多初接触的朋友感觉晕头晕脑,相比之前的jobs,SCHEDULER中新增的概念太多.比如说jobs,仍然可以理解成之前版本 ...