[
https://jira.codehaus.org/browse/SUREFIRE-848?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=301255#comment-301255
]
Zemian Deng commented on SUREFIRE-848:
--------------------------------------
I get this same error intermittently on our java project build. We are using
maven-surefire-plugin:2.11 with maven-3.0.4. When this happens our build seems
to take same amount of time, but the test counts and output are way off.
Exception in thread "ThreadedStreamConsumer" java.lang.NullPointerException
at
org.apache.maven.surefire.report.AbstractFileReporter.testSetCompleted(AbstractFileReporter.java:111)
at
org.apache.maven.surefire.report.MulticastingReporter.testSetCompleted(MulticastingReporter.java:51)
at
org.apache.maven.surefire.report.TestSetRunListener.testSetCompleted(TestSetRunListener.java:121)
at
org.apache.maven.plugin.surefire.booterclient.output.ForkClient.consumeLine(ForkClient.java:97)
at
org.apache.maven.plugin.surefire.booterclient.output.ThreadedStreamConsumer$Pumper.run(ThreadedStreamConsumer.java:67)
at java.lang.Thread.run(Thread.java:619)
> NPE in org.apache.maven.plugin.surefire.report.AbstractTextReporter
> -------------------------------------------------------------------
>
> Key: SUREFIRE-848
> URL: https://jira.codehaus.org/browse/SUREFIRE-848
> Project: Maven Surefire
> Issue Type: Bug
> Components: Junit 4.x support, Maven Surefire Plugin
> Affects Versions: 2.12
> Reporter: Stephan Schroevers
> Attachments: example.tbz
>
>
> The combination Surefire/JUnit 4 causes a {{NullPointerException}} in
> {{org.apache.maven.plugin.surefire.report.AbstractTextReporter}} if one has a
> {{RunListener}} configured which (for whatever reason) throws an exception
> in its {{#testRunStarted(Description)}} method.
> I have [attached|^example.tbz] a dummy project; run {{`mvn test`}} to see the
> problem. The cause of this issue is that {{AbstractTextReporter}} initializes
> its {{testResults}} field when
> {{AbstractTextReporter#testSetStarting(ReportEntry)}} is called, which (it
> seems) doesn't happen until JUnit invokes
> {{RunNotifier#fireTestStarted(Description)}}. This is too late, because an
> exception during the invocation of
> {{RunNotifier#fireTestRunStarted(Description)}} causes
> {{AbstractTextReporter#testError(ReportEntry, String, String)}} to be
> invoked. The result is an NPE on line 103.
> Stacktrace:
> {noformat}
> Exception in thread "ThreadedStreamConsumer" java.lang.NullPointerException
> at
> org.apache.maven.plugin.surefire.report.AbstractTextReporter.testError(AbstractTextReporter.java:103)
> at
> org.apache.maven.plugin.surefire.report.MulticastingReporter.testError(MulticastingReporter.java:87)
> at
> org.apache.maven.plugin.surefire.report.TestSetRunListener.testError(TestSetRunListener.java:150)
> at
> org.apache.maven.plugin.surefire.booterclient.output.ForkClient.consumeLine(ForkClient.java:115)
> at
> org.apache.maven.plugin.surefire.booterclient.output.ThreadedStreamConsumer$Pumper.run(ThreadedStreamConsumer.java:67)
> at java.lang.Thread.run(Thread.java:619)
> {noformat}
> Note that this issue seems to have been the root cause of SUREFIRE-157; the
> [last
> comment|jira.codehaus.org/browse/SUREFIRE-157?focusedCommentId=197215#comment-197215]
> to that ticket also pointed to the late initialisation of the
> {{testResults}} field.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://jira.codehaus.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira