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

Reply via email to