Self-registration is still disabled in JIRA, so I'm posting the bug report here:
JUnit doesn't have suite listeners. ReactorManager tries to emulate them by tracking test classes for which a runner was created and calling afterSuite() on the reactor when there are 0 classes left. This breaks down when some tests are excluded because of their categories (e.g. in Surefire using <groups/> and <excludedGroups/>). Runners are still created for the excluded tests, but then some of them are excluded in ParentRunner.filter(), and the testClasses set in ReactorManager never becomes empty. A javadoc comment in SingletonStageReactor says "The teardown logic is postponed to a JVM shutdown hook.", but I haven't found that shutdown hook. In our POM we filter tests by category [1] so that we can run the reactor-per-suite tests in one JVM and the reactor-per-class/reactor-per-method tests in another JVM (as a workaround for PAXEXAM-639 [2]). Thanks Dan [1]: https://github.com/infinispan/infinispan/blob/master/integrationtests/osgi/pom.xml#L352 [2]: https://ops4j1.jira.com/browse/PAXEXAM-639 -- -- ------------------ OPS4J - http://www.ops4j.org - [email protected] --- You received this message because you are subscribed to the Google Groups "OPS4J" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
