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

在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. Java 技术体系(JDK 与 JRE 的关系)、POJO 与 JavaBeans

    Java 技术体系的分层结构(不同的颜色表示不同的层次),尤其注意 JDK 与 JRE 之间的包含关系: 图见 Java Platform Standard Edition 7 Documentati ...

  2. codeforces 940F 带修改的莫队

    F. Machine Learning time limit per test 4 seconds memory limit per test 512 megabytes input standard ...

  3. Python 私有化类的属性

    class MandgerSec: def __init__(self,name,gender,level): self.type=("fire",None) self.name= ...

  4. 【高德地图API】SDK v1.1.1 在代码中设置Map中心点Center级别不起作用

    有时候你在初始化地图时不是直接在xaml中设置Map的Center,而是在cs代码中设置Center或者设置SetZoomAndCenter改变中心点和缩放级别.你可能会发现,不起作用. 这边提出的解 ...

  5. bzoj 4808: 马【匈牙利算法】

    网格图黑白染色,然后能互相攻击到的点之间连边,跑匈牙利算法最大匹配,答案是好点个数-最大匹配(最大独立集) 注意pao的时候只从一种颜色的格子统计即可 #include<iostream> ...

  6. bzoj1770: [Usaco2009 Nov]lights 燈(折半搜索)

    1770: [Usaco2009 Nov]lights 燈 Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 1153  Solved: 564[Submi ...

  7. [Swift通天遁地]一、超级工具-(8)地图视图MKMapView的常用代理方法

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  8. 微服务下,使用ELK做日志收集及分析

    一.使用背景 目前项目中,采用的是微服务框架,对于日志,采用的是logback的配置,每个微服务的日志,都是通过File的方式存储在部署的机器上,但是由于日志比较分散,想要检查各个微服务是否有报错信息 ...

  9. eccharts-gl 3D立体柱状图

    echarts-gl继承于echarts echarts-gl官方实例https://echarts.baidu.com/examples/index.html#chart-type-globe 代码 ...

  10. Quartz定时调度jar包的执行Demo分享

    1.Quartz简介 ​ Quartz框架的核心是调度器.调度器负责管理Quartz应用运行时环境.调度器不是靠自己做所有的工作,而是依赖框架内一些非常重要的部件.Quartz不仅仅是线程和线程管理. ...