首页 > 其他 > 详细

TestNG详解(单元测试框架)

时间:2017-09-28 11:24:26      阅读:291      评论:0      收藏:0      [点我收藏+]

一、TestNG的优点

  1.1 漂亮的HTML格式测试报告

  1.2 支持并发测试

  1.3 参数化测试更简单

  1.4 支持输出日志

  1.5 支持更多功能的注解

二、编写TestNG测试用例的步骤

  2.1 使用 Eclipse生成TestNG的测试程序框架

  2.2 在生成的程序框架中编写测试代码逻辑

  2.3 根据测试代码逻辑,插入TestNG注解标签

  2.4 配置Testng.xml文件,设定测试类、测试方法、测试分组的执行信息

  2.5 执行TestNG的测试程序

三、如何安装TestNG

      启动Eclipse,选择Help-Install New Software-》点击add-name中输入TestNGlocation中输入“http://beust.com/eclipse/”,点击ok-》在弹出的install对话框中勾选TestNG复选框-Next-Accept-Finish

四、testNG用例执行后如何查看执行结果?

  4.1 Console标签栏中展示测试用例的执行结果,如图:

  技术分享

  4.2 在工程下也会生成一个test-output文件夹,如图:

  技术分享

 

五、TestNG常用注解:执行顺序如下

  @BeforeSuite > @BeforeTest > @BeforeMethod > @Test > @AfterMethod > @AfterTest > @AfterSuite

@BeforeSuite

表示会在当前测试集合中的任意一个测试用例开始运行前执行

@AfterSuite

表示会在当前测试集合中的所有测试程序运行结束之后执行

@BeforeTest

表示会在Test中的任意一个测试用例开始运行前执行

@AfterTest

表示会在Test中的所有测试用例运行结束后执行

@BeforeGroups

分组测试用例的任一测试用例开始运行前执行

@AfterGroups

分组测试用例的所有测试用例运行结束后执行

@BeforeClass

在当前测试类的任意一个测试用例开始运行前执行

@AfterClass

在当前测试类的所有测试用例运行结束后执行

@BeforeMethod

在每个测试方法开始运行前执行

@AfterMethod

在每个测试方法运行结束后执行

@Test

被认为是一个测试方法,既一个测试用例

六、如何创建TestNG测试集合?

  6.1 测试集合:在自动化测试的执行过程中,通常会产生批量运行多个测试用例的需求,此需求称为运行测试集合(Test Suite

  6.2 TestNG的测试用例可以是相互独立的,也可以按照特定的顺序来执行(配置TestNG.xml

  6.3 如何配置testNG.xml文件?     

<suite name = "TestNG Suite">    //自定义的测试集合名称
  <test name = "test1">    //自定义的测试名称
    <classes>    //定义被运行的测试类
      <class name = "cn.gloryroad.FirstTestNGDemo" />    //测试类的路径
      <class name = "cn.gloryroad.NewTest" />
    </classes>
  </test> 
</suite>

七、测试用例的分组(group

  7.1 只执行一组分组配置如下:

<suite name = "TestNG Suite">
  <test name = "Grouping">
    <groups>
      <run>
        <include name = "动物" />
      </run>
    </groups>
    <classes>
      <class name = "cn.gloryroad.Grouping"/>
    </classes>
  </test>
</suite>

  7.2 执行多组分组时配置如下(两种形式都可以):

<suite name = "TestNG Suite">
  <test name = "Grouping">
    <groups>
      <run>
        <include name = "动物" />   //name分组名称
             <include name = "人" />
      </run>
    </groups>
    <classes>
      <class name = "cn.gloryroad.Grouping"/>
    </classes>
  </test>
</suite>            
<suite name = "TestNG Suite">
    <test name = "Grouping">
        <groups>
       <define name = "All">
          <include name = "动物" />
          <include name = "人" />
       </define>
       <run>
          <include name = "All" />
       </run>
     </groups>
    <classes>
      <class name = "cn.gloryroad.Grouping"/>
    </classes>
  </test> 
</suite>

八、依赖测试(dependsOnMethod

  @Test(dependsOnMethod = {"方法名称"})

  被依赖的方法优先于此方法执行

九、特定顺序执行测试用例(priority

  @Test(priority = 0/1/2/3/4/…)

  按照数字大小顺序优先执行,优先执行1,然后是2…

十、如何跳过某个测试方法(enabled = false

  @Test(priority = 0/1… , enabled = false)

  执行结束后,在测试报告中显示跳过的测试用例数,例如skip=1

 

十一、测试报告中自定义日志(Reporter.log输入自定义内容)),例如:

  @Test(groups = {""})

  public void student(){

    System.out.println("学生方法被调用");

    Reporter.log("学生方法自定义日志");

  }

技术分享

 

TestNG详解(单元测试框架)

原文:http://www.cnblogs.com/yxfeng/p/7605522.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!