我正在尝试从ant调用testng.xml文件的测试。
我的testng.xml如下所示:
<suite name="testsuite">
bunch of parameters here
<test name="test1">
</test>
<test name="test2">
</test>
</suite>
现在,我想只运行“test1”测试,而不是“test2”测试。是否有方法(参数?)告诉ant build.xml文件执行此操作?
<testng classpathref="testng.class.path" delegateCommandSystemProperties="true"
outputDir="${test-output}" haltOnfailure="false" useDefaultListeners="true"
parallel="methods"
failureproperty="test.failure">
<xmlfileset file="testng.xml"/>
<!--forked JVM OOM issue-->
<jvmarg value="-Xmx512M"/>
<jvmarg value="-Xms512M"/>
<jvmarg value="-Xmn192M"/>
<jvmarg value="-XX:PermSize=128M"/>
<jvmarg value="-XX:MaxPermSize=128M"/>
</testng>
答案 0 :(得分:1)
在documentation中查找-testnames
(注意:复数形式)。
答案 1 :(得分:0)
xml文件非常适合:不从包含测试的类文件运行所有测试。在我看来,预期的方法是更改现有的xml文件,或者创建一个新文件。
但是,如果您的测试包含在不同的类文件中(我无法从您的示例代码中看到),您可以指定一个类文件集而不是xmlfileset,例如:
<testng workingDir="../../" outputdir="${output_dir}"
verbose="2" listeners="org.uncommons.reportng.HTMLReporter,org.uncommons.reportng.JUnitXMLReporter"
classpathref="testsClasspath">
<classfileset dir="./${test_classes}/com/my/organization" includes="MyTest.class" />
</testng>