1

我最近将此代码添加到我的 testng.xml

<listeners>      
  <listener class-name="org.uncommons.reportng.HTMLReporter"/>
       <listener class-name="org.uncommons.reportng.JUnitXMLReporter"/>
</listeners>

我正在使用以下 jar 文件

velocity-dep-1.4.jar
reportng-1.1.4.jar
guice-3.0.jar

它给了我以下错误

 org.testng.TestNGException: java.lang.NullPointerException
    at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:341)
    at org.testng.remote.RemoteTestNG.run(RemoteTestNG.java:88)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:204)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:175)
Caused by: java.lang.NullPointerException
    at org.testng.xml.TestNGContentHandler.xmlListeners(TestNGContentHandler.java:356)
    at org.testng.xml.TestNGContentHandler.endElement(TestNGContentHandler.java:704)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
    at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.endNamespaceScope(Unknown Source)

我添加了上面的监听器,希望能够制作自定义报告 我在eclipse类路径中添加了reportng的jar文件?

那么我该如何解决这个错误呢?

我要在其他地方添加 jar 文件吗?

4

2 回答 2

1

而不是在 testng 添加在 ant build.xml

 <testng classpath="class file path" suitename="suite1"
    outputDir="test output"    
    haltonfailure="true"
    useDefaultListeners="false"
    listeners="org.uncommons.reportng.HTMLReporter,org.uncommons.reportng.JUnitXMLReporter"
    >   
        <xmlfileset dir="${ws.home}" includes="testng.xml"/>
        <sysproperty key="org.uncommons.reportng.title" value="Report"/>    
    </testng>

只需确保将所有 jar 文件放在一起。

于 2014-12-10T04:40:18.310 回答
1

您收到此错误是因为您在套件之外添加了 listeners 标记您应该使用 testng.xml,如下所示

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Test"> 
    <listeners> 
        <listener class-name="org.uncommons.reportng.HTMLReporter"/>
        <listener class-name="org.uncommons.reportng.JUnitXMLReporter"/>
    </listeners>    
    <test name="Round1">
        <classes>
            <class name="testcases.common.testCase"/>
        </classes>
    </test>
</suite> 

这对我来说很好。我确信在更改您的 xml 文件后您的问题将得到解决。

于 2017-08-08T12:59:35.857 回答