TestNG测试执行顺序

发表于:2017-7-14 17:16

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:星星故乡    来源:有赞

#
TestNG
分享:
  1.preserve-order属性,之前一直认为preserve-order属性是控制配置方法的执行顺序的,其实不是,preserve-order主要是控制test下节点classes执行顺序的
  例如:
  <xml version="1.0" encoding="UTF-8"?>  
  <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">  
  <suite name="framework_testng">  
      <test name="test" preserve-order="true">    
          <classes>  
              <class name="com.demo.One"></class>
              <class name="com.demo.Two"></class>
              <class name="com.demo.Three"></class>  
          </classes>  
      </test>  
  </suite> 
   以上将按照 类One Two Three的顺序执行
  2.那么要控制方法的执行顺序,可以采取以下方式:
  (1).使用priority控制,例如:
  @Test(priority = 0)
  public void test001() {
   
  }
   
  @Test(priority = 1)
  public void test002() {
   
  }
   
  @Test(priority = 2)
  public void test003() {
   
  }
  这样指定以后,将按照test001、test002、test003顺序执行。
  (2).使用方法命名控制
  执行顺序是按照方法名的字典序升序排序执行的,例如方法名命名为:A()  B()  C()
  这样就会按照A B C的顺序进行执行
  (3).通过include控制,例如:
  <xml version="1.0" encoding="UTF-8"?> 
  <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> 
  <suite name="framework_testng"> 
      <test name="test" preserve-order="true">  
          <classes> 
              <class name="com.demo.Yltest">
                  <methods >
              <include name="z" />
              <include name="c" />
              <include name="d" />
              <include name="e" />
              <include name="f" />
              <include name="g" />
              <include name="h" />
          </methods>
              </class>
          </classes> 
      </test> 
  </suite>
  这样将按照 z c d e f g h的顺序执行 
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号