You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "tim wu (JIRA)" <ji...@codehaus.org> on 2014/04/28 08:32:10 UTC

[jira] (SUREFIRE-1077) NPE problem will happen if you set testng status to fail at afterInvocation method

tim wu created SUREFIRE-1077:
--------------------------------

             Summary: NPE problem will happen if you set testng status to fail at afterInvocation method
                 Key: SUREFIRE-1077
                 URL: https://jira.codehaus.org/browse/SUREFIRE-1077
             Project: Maven Surefire
          Issue Type: Bug
          Components: Maven Surefire Plugin
    Affects Versions: 2.17, 2.16, 2.15, 2.14, 2.13
         Environment: Maven 3.1.1, TestNG (Try different version), Maven suirefire plugin 2.11~2.17
            Reporter: tim wu
         Attachments: target.zip

In our test program, we have some soft assert, which require us set the test result to false at afterInovcation (IInvokedMethodListener) method, after we did that, surefire plugin will throw a NPE exception, the stacktrace looks like this:

Tests run: 1, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 1.61 sec <<< FAILURE!
test1(com.surefire.SimpleTest)  Time elapsed: 0.044 sec  <<< FAILURE!
java.lang.NullPointerException: null
	at org.apache.maven.surefire.report.SmartStackTraceParser.<init>(SmartStackTraceParser.java:56)
	at org.apache.maven.surefire.report.PojoStackTraceWriter.smartTrimmedStackTrace(PojoStackTraceWriter.java:60)
	at org.apache.maven.surefire.booter.ForkingRunListener.encode(ForkingRunListener.java:328)
	at org.apache.maven.surefire.booter.ForkingRunListener.encode(ForkingRunListener.java:312)
	at org.apache.maven.surefire.booter.ForkingRunListener.toString(ForkingRunListener.java:258)
	at org.apache.maven.surefire.booter.ForkingRunListener.testFailed(ForkingRunListener.java:137)
	at org.apache.maven.surefire.testng.TestNGReporter.onTestFailure(TestNGReporter.java:105)
	at org.testng.internal.Invoker.runTestListeners(Invoker.java:1895)
	at org.testng.internal.Invoker.runTestListeners(Invoker.java:1879)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:778)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
	at org.testng.TestRunner.privateRun(TestRunner.java:767)
	at org.testng.TestRunner.run(TestRunner.java:617)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:348)
	at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:343)
	at org.testng.SuiteRunner.privateRun(SuiteRunner.java:305)
	at org.testng.SuiteRunner.run(SuiteRunner.java:254)
	at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
	at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
	at org.testng.TestNG.runSuitesSequentially(TestNG.java:1224)
	at org.testng.TestNG.runSuitesLocally(TestNG.java:1149)
	at org.testng.TestNG.run(TestNG.java:1057)
	at org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:77)
	at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.executeSingleClass(TestNGDirectoryTestSuite.java:126)
	at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.execute(TestNGDirectoryTestSuite.java:110)
	at org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:117)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray2(ReflectionUtils.java:208)
	at org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:158)
	at org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:86)
	at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
	at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:95)

I will attach a simple project to reproduce this problem.



--
This message was sent by Atlassian JIRA
(v6.1.6#6162)