2015-01-20 2 views
3

주 메서드에서 TestNG @Test 주석이 달린 메서드를 실행하고 ReportNG를 사용하여 보고서를 생성해야하는 곳에 응용 프로그램이 있습니다.Java - 프로그래밍 방식으로 TestNG의 기본 기자 해제

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); 
    } 
} 

코드는 잘 실행하지만, 시험 출력 폴더에, 내가 보고서를 얻을 ReportNG 보고서와 함께 기본 TestNG 리포터에 의해 생성됩니다. 프로그래밍 방식으로 기본 리포터를 비활성화하려면 어떻게합니까?

Turning off test-output in TestNG -이 질문은 내 것과 유사하지만 프로그래밍 방식으로 사용 중지하는 것에 대해서는 다루지 않습니다.

답변

5

답을 찾았습니다.

myTestNG.setUseDefaultListeners(false); 
관련 문제