你可以从 http://testng.org/doc/documentation-main.html 获取信息。

一、简介

TestNG是test next generation的缩写,即下一代测试技术,如果接触过junit或者nunit,可能比较好理解,但是相信有很多人和本人一样,没接触过,纯菜鸟,这样的话,就一步一步来,从最基础的写起吧。

TestNG是一个基于注释的测试框架,即可以做单元测试,也可以用来做集成测试。

一个完整的测试,包括三步:

编写测试业务逻辑,并在代码中插入TestNG annotations;

在testng.xml或者build.xml中添加自己的测试信息;

运行TestNG.

注:TestGN支持的annotation程序清单:

——@BeforeSuite,@BeforeTest,@BeforeClass,@BeforeMethod,@BeforeGroups

——@AfterSuite,@AfterTest,@AfterClass,@AfterClass,@AfterGroups

——@DataProvider

——@ExpectedExceptions

——@Factory

——@Test

——@Parameters

二、testNG.xml基础

testNG.xml是一个配置文件,testNG运行时从这个文件中获取信息,比如要运行哪个类中的哪个方法等等。如果你编写testNG.xml的时候,没有书写的提示,可以在头加上:

<!DOCTYPE suite PUBLIC "--//beust.com//testng//testng 1.0//EN" "http://beust.com/testng/testng-1.0.dtd" >

先了解一些基本概念,不懂没关系,先看:

一个suite(套件)就是一个xml文件(虽然标题是testNG.xml,大家不要被它局限,名字可以任意取的),它可以由一个或多个测试组成,标记为<suite>;

一个test(测试)由一个或者多个类组成,标记为<test>;

一个class(类)由一个或者多个方法组成,标记为<class>;

method(方法)在你的代码中就是由@Test标记的一个java 方法。

如前所述,我们可以在xml文件中指定我们此次运行的测试的配置,比如我们可以指定包名、类名、方法名等等,先看一个xml文件,有个印象:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
                                 
<suite name="Suite1" verbose="1" >
  <test name="Nopackage" >
    <classes>
       <class name="NoPackageTest" />
    </classes>
  </test>
                                
  <test name="Regression1">
    <classes>
      <class name="test.sample.ParameterSample"/>
      <class name="test.sample.ParameterTest"/>
    </classes>
  </test>
</suite>

可以看到,这个suite包含了两个test,第二个test有两个class。

TestNG(一)——起步的更多相关文章

  1. [NodeJS] Hello World 起步教程

    概述: 做数据,免不了需要展示数据,数据可视化是必须经历的步骤. 本文将提供一个NodeJS的起步教程,是笔者这两天探索的小结. 正文:  1. 为什么使用NodeJS 究竟是以B/S还是C/S的架构 ...

  2. TestNG 入门教程

    原文出处:http://www.cnblogs.com/TankXiao/p/3888070.html 阅读目录 TestNG介绍 在Eclipse中在线安装TestNG 在Eclipse中离线安装T ...

  3. JUnit 4 与 TestNG 对比

    原文出处: 付学良的网志 原文出处2: http://www.importnew.com/16270.html -------------------------------------------- ...

  4. Node.js起步 -- (1)

    先来简单介绍nodeJS 我们知道JavaScript是运行在浏览器中的,浏览器为它提供了一个上下文(context),从而让JavaScript得以解析执行. nodeJS其实可以这么理解,它是另外 ...

  5. JAVA+Maven+TestNG搭建接口测试框架及实例

    1.配置JDK 见另一篇博客:http://www.cnblogs.com/testlurunxiu/p/5933912.html 2.安装Eclipse以及TestNG Eclipse下载地址:ht ...

  6. Idea+TestNg配置test-output输出

    说明:testNG的工程我是使用eclipse创建的,直接导入到idea中,运行test时不会生产test-output,只能在idea的控制台中查看运行结果,然后到处报告,经过不懈的百度终于找到怎么 ...

  7. testng 失败自动截图

    testng执行case failed ,testng Listener会捕获执行失败,如果要实现失败自动截图,需要重写Listener的onTestFailure方法 那么首先新建一个Listene ...

  8. 两种方式testng dataprovider结合csv做测试驱动

    方式一: 第一.读取csv数据源码 import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream ...

  9. java分享第十九天(TestNg的IReporter接口的使用)

     IReporter接口是干嘛的?就是让用户自定义报告的,很多人想要自定义报告,于是乎找各种插件,比如什么testng-xslt啊,reportng啊,各种配置,最后出来的结果,还不能定制化,但为什么 ...

随机推荐

  1. 【转】Java中的内部类和匿名类

       Java内部类(Inner Class),类似的概念在C++里也有,那就是嵌套类(Nested Class),乍看上去内部类似乎有些多余,它的用处对于初学者来说可能并不是那么显著,但是随着对它的 ...

  2. C++ 构造函数_拷贝构造函数

    拷贝构造函数

  3. 学习笔记之PHP

    学习 PHP,第 1 部分: 注册帐户.上传需要批准的文件.并查看和下载已批准的文件 https://www.ibm.com/developerworks/cn/opensource/tutorial ...

  4. 20181205_C#窗体监听键盘事件

    1. 需要设置窗体的   KeyPreview = true; 2. 如果窗体上有获取的了焦点的button按钮, 则监听不到 Enter事件, 需要取消按钮的焦点

  5. 管理Linux服务器的用户和组(续篇)

    用户切换 新建用户 useradd命令的选项 设置用户口令 passwd命令的选项 chage命令 修改用户帐户 禁用和恢复用户帐户 禁用和恢复用户帐户- Passwd命令 禁用和恢复用户帐户-直接修 ...

  6. Linux操作系统-基本命令(一)

    熟悉Linux命令基础 Linux系统的终端窗口 字符终端为用户提供了一个标准的命令行接口,在字符终端窗口中,会显示一个Shell提示符,通常为$. 用户可以在提示符后输入带有选项和参数的字符命令,并 ...

  7. babun编译安装git(2.12.0)遇到的问题及解决办法

    1. 下载git wget https://www.kernel.org/pub/software/scm/git/git-2.12.0.tar.xz 你或许需要加上选项: --no-check-ce ...

  8. 基于git的管理应用程序基线包和版本

    由于工作的需要,身为git的小白的我开始研究git相关的命令和操作.结合网上收集和廖雪峰的git教程,记录所学知识点. 相关的效果就不再这里显示了. 首先我们看一下git的常用命令: 常用命令 git ...

  9. InputStream转化为String

    参考:https://blog.csdn.net/lmy86263/article/details/60479350 eg:  InputStream in = PropertiesUtils.cla ...

  10. 串口通信,帧与帧之间的时间间隔问题?9600波特率,帧将各在20ms以上