Java - 以编程方式关闭 TestNG 的默认报告器 [英] Java - Turn off TestNG's default reporters programmatically
问题描述
我有一个应用程序,我需要从主方法执行我的 TestNG @Test 注释方法,并使用 ReportNG 生成报告.
I have an application where I need to execute my TestNG @Test annotated methods from my main method, and use ReportNG to generate reports.
我的主要方法如下所示:
My main method looks like this:
public static void main(String args[])
{
TestNG myTestNG = new TestNG();
XmlSuite mySuite = new XmlSuite();
mySuite.setName("Sample Suite");
mySuite.addListener("org.uncommons.reportng.HTMLReporter");
mySuite.addListener("org.uncommons.reportng.JUnitXMLReporter");
XmlTest myTest = new XmlTest(mySuite);
myTest.setName("Sample Test");
List<XmlClass> myClasses = new ArrayList<XmlClass>();
myClasses.add(new XmlClass("com.varunmulloli.testng.SampleTest"));
myTest.setXmlClasses(myClasses);
List<XmlTest> myTests = new ArrayList<XmlTest>();
myTests.add(myTest);
mySuite.setTests(myTests);
List<XmlSuite> mySuites = new ArrayList<XmlSuite>();
mySuites.add(mySuite);
myTestNG.setXmlSuites(mySuites);
myTestNG.run();
}
我的 SampleTest
类看起来像这样:
And my SampleTest
class looks like this:
public class SampleTest
{
@Test
public void testSample()
{
String str = "TestNG is working fine";
assertEquals("TestNG is working fine", str);
}
}
代码运行良好,但在 test-output 文件夹中,我得到了默认 TestNG 报告器生成的报告以及 ReportNG 报告.如何以编程方式禁用默认报告器?
The code runs fine, but in the test-output folder, I get the reports generated by the default TestNG reporter as well along with the ReportNG reports. How do I disable the default reporters programmatically?
在 TestNG 中关闭测试输出 - 这个问题类似于我的,但它没有讨论以编程方式禁用它.
Turning off test-output in TestNG - This question is similar to mine, but it does not discuss about disabling it programmatically.
推荐答案
找到答案.
myTestNG.setUseDefaultListeners(false);
这篇关于Java - 以编程方式关闭 TestNG 的默认报告器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!