[ https://jira.codehaus.org/browse/SUREFIRE-962?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andreas Gudian reassigned SUREFIRE-962: --------------------------------------- Assignee: Andreas Gudian > SmartStackTraceParser cannot handle manipulated stack traces gracefully > ----------------------------------------------------------------------- > > Key: SUREFIRE-962 > URL: https://jira.codehaus.org/browse/SUREFIRE-962 > Project: Maven Surefire > Issue Type: Bug > Environment: 2.13, 2.14-SNAPSHOT > Reporter: Sebastian Schuth > Assignee: Andreas Gudian > Fix For: 2.14 > > > Following setup: > cucumber-jvm runs specs using a JUnit Test case. > In case of an error, surefire seems to try to be smart and parses the stack > trace cucumber-jvm has, well, somewhat manipulated. > As far as i can tell, {{SmartStackTraceParser}} is not able to handle > manipulated stack traces gracefully. > This leads to following maven output: > {code} > [ERROR] Failed to execute goal > org.apache.maven.plugins:maven-surefire-plugin:2.14-SNAPSHOT:test > (default-test) on project customer: Execution default-test of goal > org.apache.maven.plugins:maven-surefire-plugin:2.14-SNAPSHOT:test failed: > There was an error in the forked process > [ERROR] org.apache.maven.surefire.testset.TestSetFailedException: > java.lang.RuntimeException: java.lang.ClassNotFoundException: Scenario: > Destinations get exchanged; nested exception is java.lang.RuntimeException: > java.lang.ClassNotFoundException: Scenario: Destinations get exchanged > [ERROR] java.lang.RuntimeException: java.lang.ClassNotFoundException: > Scenario: Destinations get exchanged > [ERROR] at > org.apache.maven.surefire.report.SmartStackTraceParser.getClass(SmartStackTraceParser.java:67) > [ERROR] at > org.apache.maven.surefire.report.SmartStackTraceParser.<init>(SmartStackTraceParser.java:53) > [ERROR] at > org.apache.maven.surefire.common.junit4.JUnit4StackTraceWriter.smartTrimmedStackTrace(JUnit4StackTraceWriter.java:72) > [ERROR] at > org.apache.maven.surefire.booter.ForkingRunListener.encode(ForkingRunListener.java:329) > [ERROR] at > org.apache.maven.surefire.booter.ForkingRunListener.encode(ForkingRunListener.java:313) > [ERROR] at > org.apache.maven.surefire.booter.ForkingRunListener.toString(ForkingRunListener.java:259) > [ERROR] at > org.apache.maven.surefire.booter.ForkingRunListener.testFailed(ForkingRunListener.java:138) > [ERROR] at > org.apache.maven.surefire.common.junit4.JUnit4RunListener.testFailure(JUnit4RunListener.java:107) > [ERROR] at > org.junit.runner.notification.RunNotifier$4.notifyListener(RunNotifier.java:139) > [ERROR] at > org.junit.runner.notification.RunNotifier$SafeNotifier.run(RunNotifier.java:61) > [ERROR] at > org.junit.runner.notification.RunNotifier.fireTestFailures(RunNotifier.java:134) > [ERROR] at > org.junit.runner.notification.RunNotifier.fireTestFailure(RunNotifier.java:128) > [ERROR] at > org.junit.internal.runners.model.EachTestNotifier.addFailure(EachTestNotifier.java:23) > [ERROR] at cucumber.runtime.junit.JUnitReporter.result(JUnitReporter.java:83) > [ERROR] at cucumber.runtime.Runtime.runStep(Runtime.java:278) > [ERROR] at cucumber.runtime.model.StepContainer.runStep(StepContainer.java:45) > [ERROR] at > cucumber.runtime.model.StepContainer.runSteps(StepContainer.java:40) > [ERROR] at > cucumber.runtime.model.CucumberScenario.run(CucumberScenario.java:36) > [ERROR] at > cucumber.runtime.junit.ExecutionUnitRunner.run(ExecutionUnitRunner.java:83) > [ERROR] at > cucumber.runtime.junit.FeatureRunner.runChild(FeatureRunner.java:63) > [ERROR] at > cucumber.runtime.junit.FeatureRunner.runChild(FeatureRunner.java:18) > {code} > Version 2.12.3 can handle the manipulated stack trace. > To be clear: i am not really sure if this is an error within surefire or if > cucumber-jvm should just keep its hands off the stack trace it produces, but > the behavior of surefire changed between 2.12 and 2.13, so this may be worth > fixing. > If you are interested in fixing this, i will happily create a project for > reproducing the error. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira