Testng 在组级别参数化

Testng 在组级别参数化,testng,Testng,我想参数化testng.xml中的组,然后使用数据提供程序获取数据 我想运行一个元组和一个包含在元组中但参数不同的组。看起来,如果该组包含在元组中,则不会再次启动。我的用例是一个具有不同用户角色的网站(超级组应该从管理员的角度进行测试,group1应该只作为访问者进行测试) 我可以这样做: <suite name="Suite1" verbose="1" parallel="false"> <test name="SuperTest"> <

我想参数化testng.xml中的组,然后使用
数据提供程序
获取数据

  • 我想运行一个元组和一个包含在元组中但参数不同的组。看起来,如果该组包含在元组中,则不会再次启动。我的用例是一个具有不同用户角色的网站(超级组应该从管理员的角度进行测试,group1应该只作为访问者进行测试)

  • 我可以这样做:

    <suite name="Suite1" verbose="1" parallel="false">
        <test name="SuperTest">
            <parameter name="config" value="super" />
            <groups>
                <run>
                    <include name="group2" />
                    <include name="group1" />
                </run>
            </groups>
            <packages>
                <package name="com.company.test.*" />
            </packages>
        </test>
        <test name="SubTest">
            <parameter name="config" value="sub" />
            <groups>
                <run>
                    <include name="group1"/>
                </run>
            </groups>
            <packages>
                <package name="com.company.test.*" />
            </packages>
        </test>
    </suite>
    
    
    
    虽然我似乎不了解团队模式

    @DataProvider(name = "test", parallel = false)
    public static Object[][] testDataProvider(ITestContext context){
    
        String config = context.getCurrentXmlTest().getParameter("config");
    
        Object[][] back = new Object[1][1];
    
        back[0] = new Object[] { config };
    
        return back;
    }
    
    <suite name="Suite1" verbose="1" parallel="false">
        <test name="SuperTest">
            <parameter name="config" value="super" />
            <groups>
                <run>
                    <include name="group2" />
                    <include name="group1" />
                </run>
            </groups>
            <packages>
                <package name="com.company.test.*" />
            </packages>
        </test>
        <test name="SubTest">
            <parameter name="config" value="sub" />
            <groups>
                <run>
                    <include name="group1"/>
                </run>
            </groups>
            <packages>
                <package name="com.company.test.*" />
            </packages>
        </test>
    </suite>