メイン メソッドから TestNG @Test アノテーション付きメソッドを実行し、ReportNG を使用してレポートを生成する必要があるアプリケーションがあります。
私の主な方法は次のようになります。
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
クラスは次のようになります。
public class SampleTest
{
@Test
public void testSample()
{
String str = "TestNG is working fine";
assertEquals("TestNG is working fine", str);
}
}
コードは正常に実行されますが、test-output フォルダーには、デフォルトの TestNG レポーターによって生成されたレポートと、ReportNG レポートが含まれています。デフォルトのレポーターをプログラムで無効にするにはどうすればよいですか?
TestNG でテスト出力をオフにする- この質問は私のものと似ていますが、プログラムで無効にすることについては説明していません。