testng顺序执行的几个思路

上一篇 / 下一篇  2015-11-04 16:13:35 / 个人分类:testng

   用过testng的朋友应该都知道,一个class下来,往往会有几百甚至几千上万个@test。而用例执行的时候,我往往是需要让他们按顺序跑的,不然整个测试就乱套无法继续下去了。但是testng默认是按一个个@test方法名的字母顺序跑的,而不是按脚本上下文执行。那么,怎么让他按我想要的顺序执行呢?
   以下整理我这些天来的几个思路:

1、在@test后面加上“priority=1”,这样,就可以让执行顺序执照priority后面的数字顺序来执行了

2、命名方法名时,方法名的首字母使用ABCD这类的字样,那么名称为A的将最先执行,依次类推
   
   说到这,其实这两个方法我都用过,但是这两个方法都有局限性。测试人都知道,用例的编写永远没有一成不变的,估计很多用例,今天看看貌似还行,明天再看就会觉得,我应该再增加一个,这个用例没必要了,那个用例跟不上潮流了。这种时候,上面两种方法就会害死人了,因为你增加一个用例,意味着后面的数字或字母都要做相应的修改。累不累呀?

3、终极靠谱的方法:先修改testng.xml文件,如下:
<suite name="Suite" parallel="none">
  <test name="Test">
    <classes>
       <class name="WapTest"/>
        <methods preserve-order="true">
            <include name="c" />
            <include name="b" />
            <include name="g" />
        </methods>
    </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->
   执行用例的时候,要指着该testng.xml按右键,选择运行为testng suite的方式,执行结果就会按c、b、g的顺序呈现出来。
   有意思的是,这个testng.xml里面,不需要</class>来作终止,如果有反而会报错;另外,在eclipse里还可能会有几个参数不正确的报错,反正我是能正常跑的。不知道是哪门子错误。


TAG: TestNG 自动化测试 testng 顺序执行

引用 删除 半城烟沙   /   2015-11-10 15:28:21
1
 

评分:0

我来说两句

我的栏目

日历

« 2024-04-18  
 123456
78910111213
14151617181920
21222324252627
282930    

我的存档

数据统计

  • 访问量: 10709
  • 日志数: 2
  • 建立时间: 2015-11-04
  • 更新时间: 2015-11-05

RSS订阅

Open Toolbar