[ https://jira.codehaus.org/browse/SUREFIRE-876?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Olivier Lamy closed SUREFIRE-876. --------------------------------- Resolution: Fixed Fix Version/s: 2.13 applied. Thanks! > surefire-junit47 does not work in an OSGi classloader environment > ----------------------------------------------------------------- > > Key: SUREFIRE-876 > URL: https://jira.codehaus.org/browse/SUREFIRE-876 > Project: Maven Surefire > Issue Type: Improvement > Components: classloading, Junit 4.7+ (parallel) support > Affects Versions: 2.10 > Reporter: Jan Sievers > Assignee: Olivier Lamy > Fix For: 2.13 > > > while trying to port JUnitCoreProvider to tycho, I noticed that it fails with > an NPE when run inside an OSGi environment. > The root cause is really JUnit bug > https://github.com/KentBeck/junit/issues/364 > JUnit uses Class.forName() to load the test class which assumes the JUnit > classloader can always load test classes, which is not true in an OSGi > classloader environment. > While this should be fixed in JUnit, it's easy to work around this issue in > surefire. > It's not necessary to use the offending > org.junit.runner.Description.getTestClass() in > JUnitCoreRunListener.fillTestCountMap(). We can use String getClassName() > instead to circumvent classloading issues as we only need the class name > anyway. > I will attach a patch. -- 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