zoukankan      html  css  js  c++  java
  • testNG总结一(主要listeners之间的生命周期图)

    一、理解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

  • 相关阅读:
    More on wrapper types
    使用Solr索引MySQL数据
    Java线程池
    Jedis-returnResource使用注意事项
    sh脚本异常,binsh^M bad interpreter No such file or directory
    Java集合类从属关系
    SonarQube+Jenkins,搭建持续交付平台
    初始化块和静态初始化块的区别
    从SonarQube谈设计模式
    Github+Hexo,搭建专属网站
  • 原文地址:https://www.cnblogs.com/gracejiang/p/15221375.html
Copyright © 2011-2022 走看看