• 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{
    
        .....
    }
  • 相关阅读:
    Python基础05
    Python基础04
    Python基础03
    Python基础02
    Python基础01
    软件测试
    深入了解软件测试基础04
    深入了解软件测试基础03
    深入了解软件测试基础02
    深入了解软件测试基础01
  • 原文地址:https://www.cnblogs.com/alicegu2009/p/9171489.html
Copyright © 2020-2023  润新知