zoukankan      html  css  js  c++  java
  • TestNg 顺序依赖

    1. 在TestNG的测试中,一个测试方法的执行往往需要依赖其他测试方法的先期或延后执行,这种测试方法的执行先后顺序就被称为测试方法之间的依赖关系。

    @Test  
    public void serverStartedOk() {}//被依赖的测试方法  
       
    @Test(dependsOnMethods = { "serverStartedOk" })  
    public void method1() {}  

    2.多个被依赖的测试方法

    一个测试方法可能依赖一个测试方法,也可能依赖多个测试方法。对于多个被依赖的测试方法,可以通过方法名直接给出,也可以通过组名给出被依赖的测试方法。

    1) 在测试类中通过方法名给出被依赖的测试方法,示例如下:

    @Test  
    public void serverStartedOk1() {}  
       
    @Test  
    public void serverStartedOk2() {}  
      
    @Test(dependsOnMethods = { "serverStartedOk1",  "serverStartedOk2" })  
    public void method1() {}  

    2) 在测试类中通过组名给出被依赖的测试方法.

    3) 在testng.xml配置文件中通过组名给出被依赖的测试方法:

    <test name="Alice Test">  
      <groups>  
        <dependencies>  
          <group name="c" depends-on="a  b" />  
          <group name="d" depends-on="c" />  
        </dependencies>  
      </groups>  
    </test>  

    强制依赖: 如果被依赖的某一个方法发生了异常,那么之后的方法都不会被执行(默认)

    @Test(dependsOnGroups = { "init.*" })  
        public void method1() {  
            System.err.println("I am over here.....");  
        }  

    顺序依赖:无论被依赖的方法是否出现异常,后续的方法都会被执行,通过alwaysRun=“true”来配置

     @Test(dependsOnGroups = { "init.*" }, alwaysRun = true)  
        public void method1() {  
            System.err.println("I am over here.....");  
        }  

    另外

    使用<groups>标记在testng.xml文件中指定分组。 它可以在<test><suite>标签下找到。 <suite>标签中指定分组适用于其下的所有<test>标签。

    在测试类里面,“分组”可以在类上应用。 在下面的示例中,此时每个公共方法都属于分组: 

    @Test(groups = "smoke-test")
    public class TestGroupOnClass{
    
        .....
    }
  • 相关阅读:
    无法识别的属性“targetFramework”的解决方法
    你所不知道的SQL Server数据库启动过程,以及启动不起来的各种问题的分析及解决技巧(转)
    win7系统如何安装SQL Server 2005
    2017年需要知道的技术
    平时对Vue的总结
    用rem实现h5页面的编写
    判断页面是横屏还是竖屏
    页面中插入视频兼容ie8以上的浏览器
    jquery实现加载更多效果
    联动选择通过ajax获取选择对应的数据
  • 原文地址:https://www.cnblogs.com/alicegu2009/p/9171489.html
Copyright © 2011-2022 走看看