TestNG(一)——起步

你可以从 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。

原文地址:https://www.cnblogs.com/bugua/p/3653449.html