一、理解testNG的基本概念

testNG是一个用来简化跨度很大的测试的测试框架,从1个类的unit test到由多个类、多个package、甚至几个外部框架组成的集成测试,都能cover。
使用testNG最基本的3个步骤:
  ① 写测试的逻辑到方法或者类,并用annotation去标记;
  ② 把你想运行的测试(类或者方法,或者一组类,一组方法),写进一个suite.xml;
  ③ 用testNG去运行suite.xml

1)suite: xml的文件,通过<suite>来定义。包含1个或者多个test。

2)test: 通过<test>来定义,包含1个或者多个testNG classes。

3)testNG class: 包含至少1个testNG annotation的java class。被<class>标签定义,包含1个或者多个test method。

4)testNG method: 1个java方法,被@Test annotation修饰

5)  group: 是从分类的角度,对test method或者test class进行分类。 source code中,group参数可以定义在class level和method level。

6)Listeners: 允许用户改变testNG特定测试阶段的行为的一些接口。

7)annotation: 用annotation修饰的方法,可以在testNG特定测试阶段运行。


二、testNG常见的listener

listener_thumb1

ITestNGListener: 主要用于表达分类的,没有任何方法定义的接口。

image_thumb3


二、理解testNG listener的前后关系

1)custom listener 实现 多个listener,TestNGFlowListner.java

2) 写一个testcase的例子,SampleTest0.java

3)写一个suite.xml, testngflow.xml

4) 安装testNG 插件到eclipse中

5)新建maven project,引入testNG dependency

6) 运行 testngflow.xml, 得到输出如下:

image_thumb5

三、testNG的入口TestNG类中的 run() 

TestNG.java 的main函数

四、常用listener的flow图

通过二、6)和testNG的入口可知,能显示常用listener之间的flow图如下:

image

posted on 2021-09-02 23:53  维也纳下午茶  阅读(159)  评论(0编辑  收藏  举报