我有以下testNg XML文件。我想运行Test1而不是Test2。我该怎么做?我尝试使用“exclude”关键字排除Test2的方法。但它似乎不起作用。我无法更改实际代码。不幸的是,这是被禁止的。我所能做的就是对这个XML进行更改并运行测试。有没有什么方法可以忽略Test2,同时还能运行Test1?我正在寻找比评论代码更优雅的方式。
<?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 -->
答案 0 :(得分:1)
在test2中,将include替换为在所有字段中排除
通过这样做,您将从代码中排除这些字段或方法
答案 1 :(得分:0)
如果您不想运行<test name="Test2">
,请将其从套件中移除。
xml套件文件背后的想法是定义一个运行。
看起来你有很多运行定义,所以你应该有很多套件文件。
如果您想在套件文件之间共享内容,可以使用<suite-file>
,例如&#34; import&#34;:http://testng.org/testng-1.0.dtd.php
测试1-suite.xml
<?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>
两者 - suite.xml
<?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>