Hi, on the testcontainers thread I mentioned that we can switch to JUnit5. I've attended a talk by Sam Brannen at the local JUG. I think it was a variant of the talk[1] he gave at SpringOne 2017.
The key takeaway for me was that JUnit5 is forward and backward compatible, so you can run the same tests written with JUnit4 annotations on JUnit5, but you can also run JUnit5 tests on JUnit4, if for some reason that would make sense in a particular case. What I understood is that we could upgrade to JUnit5 by simply upgrading the surefire/failsafe Maven plugins and adding the junit-vintage-engine dependency but only to a module that has mixed JUnit4 and JUnit5 tests[2]. The only issue is limited @Rule support. Now on to the benefits, I think it makes much sense to move over to JUnit5 for the conditional test execution[3], better categorization of tests via tags[4] and the much better extension model[5]. I propose that we schedule this for the one release after the pending one (so in 2.23), and that we add camel-test-jupiter component that would help developers write nicer tests for their integrations with support for dependency injection for example[6]. zoran [1] https://www.youtube.com/watch?v=h0Idcz71Aog [2] https://junit.org/junit5/docs/current/user-guide/#migrating-from-junit4 [3] https://junit.org/junit5/docs/current/user-guide/#writing-tests-conditional-execution [4] https://junit.org/junit5/docs/current/user-guide/#writing-tests-tagging-and-filtering [5] https://junit.org/junit5/docs/current/user-guide/#extensions [6] https://junit.org/junit5/docs/current/user-guide/#writing-tests-dependency-injection -- Zoran Regvart
