Uploaded image for project: 'Maven Surefire'
  1. Maven Surefire
  2. SUREFIRE-1505

Ability to use a custom StackTraceWriter with the surefire plugin...

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • None
    • None
    • None
    • None

    Description

      Current stack trace printout in my opinion is not ideal for all use cases..

      For example it would be nice to have package information (jar/version), so that when people report an issue and provide a stack trace you also know the precise library info/versions which is very valuable...

      Another use case would be if one would want to use a json representation...

      Here would be an example of stack trace printed with https://github.com/zolyfarkas/spf4j/blob/master/spf4j-core/src/main/java/org/spf4j/base/Throwables.java#L519 :

      com.google.common.util.concurrent.UncheckedExecutionException:java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: Value of java.util.Map<java.lang.String, ? extends java.io.Serializable> cannot be converted to open type
      	at o.s.r.CachingTypeMapSupplierWrapper.get(CachingTypeMapSupplierWrapper.java:120)[classes/]
      	at o.s.j.m.Spf4jOpenTypeMapper.get(Spf4jOpenTypeMapper.java:165)[^]
      	at o.s.j.OpenTypeConverterTest.testConverterMapStrObject(OpenTypeConverterTest.java:191)[test-classes/]
      	at s.r.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_162]
      	at ^.invoke(^:62)[^]
      	at s.r.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[^]
      	at j.l.r.Method.invoke(Method.java:498)[^]
      ...
      	at o.j.r.ParentRunner.run(^:363)[^]
      	at o.a.m.s.j.JUnit4Provider.execute(JUnit4Provider.java:369)[surefire-junit4-2.20.1.jar:2.20.1]
      	at ^.executeWithRerun(^:275)[^]
      	at ^.executeTestSet(^:239)[^]
      	at ^.invoke(^:160)[^]
      	at o.a.m.s.b.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:373)[surefire-booter-2.20.1.jar:2.20.1]
      	at ^.runSuitesInProcess(^:334)[^]
      	at ^.execute(^:119)[^]
      	at ^.main(^:407)[^]
      Caused by: java.util.concurrent.ExecutionException:java.lang.IllegalArgumentException: Value of java.util.Map<java.lang.String, ? extends java.io.Serializable> cannot be converted to open type
      	at o.s.c.UnboundedLoadingCache.get(UnboundedLoadingCache.java:111)[classes/]
      	at o.s.r.CachingTypeMapSupplierWrapper.get(CachingTypeMapSupplierWrapper.java:114)[^]
      	... 27 more
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            zolyfarkas Zoltan Farkas
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: