你可以从 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. mac php apache mysql 集成环境 的软件

    http://xclient.info/s/mamp-pro.html?t=4e60e3c234937f46b33e6b15eeafeb5ee326afa4 MAMP Pro 5.1 集成web服务器 ...

  2. [转]Java IDE 之 IntelliJ IDEA 2017

    参考链接1:http://blog.csdn.net/u012364631/article/details/47682011 IDEA Community(社区版) 使用Maven创建Web工程 并部 ...

  3. android基于adb的性能测试

    应用CPU.内存.点亮.流量等数据,是应用测试的重要性能指标.本次以UC浏览器为例. 当前UC测试中,每个正式版本都会专门做一轮性能测试,测试数据包括: 1小时内存数据 1小时CPU数据 24小时电量 ...

  4. 条件随机场(CRF)-IIS学习算法

    改进的迭代尺度法(Improved Iterative Scaling),在很多模型求解中用到,比如最大熵.CRFs等,对模型是对数线性模型的似然都适用.这个算法的思想也很简单,通俗的理解就是通过两个 ...

  5. C#直接解析Json键值对

    string test_json = "{\"name\":\"tom\",\"nickname\":\"tony\&q ...

  6. leetcode654

    class Solution { public: TreeNode* constructMaximumBinaryTree(vector<int>& nums) { ) retur ...

  7. 「小程序JAVA实战」小程序的留言和评价功能(70)

    转自:https://idig8.com/2018/10/28/xiaochengxujavashizhanxiaochengxudeliuyanhepingjiagongneng69/ 目前小程序这 ...

  8. C++ 获取特定进程的CPU使用率<转>

    C++ 获取特定进程的CPU使用率 近来发现笔记本在关闭屏幕后风扇转得特别快,打开屏幕后看任务管理器,风扇马上减速,也没有发现大量占用CPU的进程.于是想写一个小程序在后台记录每个进程的CPU使用情况 ...

  9. java.io.CharConversionException: Not an ISO 8859-1 character:

    java.io.CharConversionException: Not an ISO 8859-1 character: XXX 这个问题可能是因为outputstream输出中文字造成的影响. r ...

  10. 解决no-session延迟加载问题

    解决no-session延迟加载问题 说明:dao层使用Hibernate从数据库查询数据信息返回给web层,在web层打印信息报no-Session错误, 产生原因 关联对象默认都是采用延迟加载 事 ...