在testNg中排除测试

在testNg中排除测试,testng,Testng,我有以下testngxml文件。我想运行Test1而不是Test2。我怎么做?我尝试使用“exclude”关键字排除Test2的方法。但这似乎不起作用。我无法更改实际代码。不幸的是,这是被禁止的。我所能做的就是修改这个XML并运行测试。有没有什么方法可以让我在运行Test1的同时忽略Test2?我正在寻找一种比注释代码更优雅的方式 <?xml version="1.0" encoding="UTF-8"?> <suite name="Suite" parallel="false

我有以下testngxml文件。我想运行Test1而不是Test2。我怎么做?我尝试使用“exclude”关键字排除Test2的方法。但这似乎不起作用。我无法更改实际代码。不幸的是,这是被禁止的。我所能做的就是修改这个XML并运行测试。有没有什么方法可以让我在运行Test1的同时忽略Test2?我正在寻找一种比注释代码更优雅的方式

<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite" parallel="false">
<parameter name="xxx" value="yyy" />
<parameter name="zzz" value="aaa" />
<parameter name="user" value="1" />

<test name="Test1">
    <parameter name="browser" value="Chrome" />
    <define name = "regression">
            <include name = "spot" />
            <include name = "sanity" />
        </define>
    <groups>
        <run>
            <include name="regression" />
        </run>
    </groups>
        <classes>
            <class name="class2" />
            <method>
                <include name="method1" />
                <include name="method2" />
            </method> 
        </classes>
</test>

<test name="Test2">
    <parameter name="browser" value="Firefox" />
        <define name = "regression">
            <include name = "spot" />
            <include name = "sanity" />
        </define>
    <groups>
        <run>
            <include name="spot" />
            <exclude name="sanity" />
        </run>
    </groups>
        <classes>
            <class name="class2" />
            <method>
                <include name="method1" />
                <include name="method2" />
            </method> 
        </classes>
</test>



</suite>  <!-- Suite -->

在test2中,在所有字段中替换要排除的include


通过这样做,您将从代码中排除该字段或方法

如果您不想运行
,只需将其从套件中删除即可

xml套件文件背后的思想是定义运行。 看起来您有许多运行定义,因此您应该有许多套件文件。 如果要在套件文件之间共享内容,可以使用类似“导入”的

Test1-suite.xml


tware-suite.xml


Test1-suite.xml

我尝试为方法包含“排除”。但它似乎不起作用。@zeroth dose sanity在测试2中运行感谢您指出了它@rishit_s。方法(方法1和方法2)被纳入“斑点”组。所以,我猜“spot”中的“include”是在方法names.Yup中的“exclude”之上。谢谢:)
<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite" parallel="false">
    <parameter name="xxx" value="yyy" />
    <parameter name="zzz" value="aaa" />
    <parameter name="user" value="1" />

    <test name="Test1">
        <parameter name="browser" value="Chrome" />
        <define name = "regression">
            <include name = "spot" />
            <include name = "sanity" />
        </define>
        <groups>
            <run>
                <include name="regression" />
            </run>
        </groups>
        <classes>
            <class name="class2" />
            <method>
                <include name="method1" />
                <include name="method2" />
            </method> 
        </classes>
    </test>
</suite>
<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite" parallel="false">
    <suite-files>
        <suite-file>Test1-suite.xml</suite-file>
    </suite-files>
    <test name="Test2">
        <parameter name="browser" value="Firefox" />
            <define name = "regression">
                <include name = "spot" />
                <include name = "sanity" />
            </define>
        <groups>
            <run>
                <include name="spot" />
                <exclude name="sanity" />
            </run>
        </groups>
        <classes>
            <class name="class2" />
            <method>
                <include name="method1" />
                <include name="method2" />
            </method> 
        </classes>
    </test>
</suite>