Maven TestNG:排除属于多个组的测试

Maven TestNG:排除属于多个组的测试,maven,selenium-webdriver,testng,grouping,Maven,Selenium Webdriver,Testng,Grouping,我有几个测试是一组的一部分(吸烟或回归),还有几个其他测试是多组的一部分(吸烟和回归) 当我尝试执行一组“冒烟”或“回归”时,将执行仅属于这些组中任何一组的部分的测试,并且排除属于多个组的任何测试,即使它们也是指定组的一部分 我尝试了以下选项分别执行烟雾和回归组案例: mvn测试-Dgroups=Smoke mvn测试-Dincludedgroups=烟雾 mvn测试-Dexcludedgroups=回归 mvn测试-Dgroups=回归 mvn测试-Dincludedgroups=回归 mvn

我有几个测试是一组的一部分(吸烟或回归),还有几个其他测试是多组的一部分(吸烟和回归)

当我尝试执行一组“冒烟”或“回归”时,将执行仅属于这些组中任何一组的部分的测试,并且排除属于多个组的任何测试,即使它们也是指定组的一部分

我尝试了以下选项分别执行烟雾和回归组案例:

  • mvn测试-Dgroups=Smoke

  • mvn测试-Dincludedgroups=烟雾

  • mvn测试-Dexcludedgroups=回归

  • mvn测试-Dgroups=回归

  • mvn测试-Dincludedgroups=回归

  • mvn测试-Dexcludedgroups=烟雾


  • 试验方法:

    @Test(groups={"Smoke"})
    public void One(){
     System.out.println("Smoke Test Message");
    }
    
    @Test(groups={"Smoke", "Regression"})
    public void Two() {
     System.out.println("Smoke and Regression Test Message");       
    }
    
    @Test(groups={"Regression"})
    public void Three() {
     System.out.println("Regression Test Message");     
    }
    
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
    <suite name="TestNGSuite">
        <test name="GroupTests">
            <classes>
                <class name="tests.PageTest"/>
            </classes>
        </test>
    </suite> 
    

    testngxml:

    @Test(groups={"Smoke"})
    public void One(){
     System.out.println("Smoke Test Message");
    }
    
    @Test(groups={"Smoke", "Regression"})
    public void Two() {
     System.out.println("Smoke and Regression Test Message");       
    }
    
    @Test(groups={"Regression"})
    public void Three() {
     System.out.println("Regression Test Message");     
    }
    
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
    <suite name="TestNGSuite">
        <test name="GroupTests">
            <classes>
                <class name="tests.PageTest"/>
            </classes>
        </test>
    </suite> 
    
    
    
    • 对于选项1至3:

      • 预期:应执行方法1和方法2

      • 实际:只能执行方法1

    • 对于备选方案4至6:

      • 预期:应执行方法2和方法3

      • 实际:仅执行方法三