jcabi/jcabi-parent

Update/Migrate to JUnit 5

HDouss opened this issue · 9 comments

A child pom that want to use JUnit 5 will still have the dependency for JUnit 4 in their dependency tree and have no way to exclude it. This is because JUnit 5 have a new maven group and a new maven artifact id. If my project is a child project of jcabi-parent and I want to prevent developers from using JUnit 4 annotations because they are "less" object oriented, I have no way to do it. jcabi-parent should migrate to JUnit 5 and update maven-surefire-plugin to version 2.22.1 to be able to run JUnit 5 tests.
For children projects that still want to use JUnit 4 api (annotations) and test runner, they still can add JUnit 4 dependency and junit-vintage-engine that is able to run JUnit 4 tests.

0crat commented

@yegor256/z please, pay attention to this issue

0crat commented

@HDouss/z this project will fix the problem faster if you donate a few dollars to it; just click here and pay via Stripe, it's very fast, convenient and appreciated; thanks a lot!

@HDouss this seems to be already the case in latest version

@yegor256 that being said, it would be good to do those two things:

  • use the BOM instead of manually specifying each dependency management one by one, see https://stackoverflow.com/a/58600045/9046139
  • bump to latest version because the one set in jcabi-parent has some bugs that for example breaks the tests in cactoos when using junit-vintage-engine

@yegor256 also there seems to be a bad interaction with qulice:

[WARNING] Found duplicate and different classes in [org.apiguardian:apiguardian-api:1.1.0,org.junit.platform:junit-platform-commons:1.6.2,org.junit.platform:junit-platform-engine:1.6.2,org.junit.vintage:junit-vintage-engine:5.6.2,org.opentest4j:opentest4j:1.2.0] :
[WARNING]   module-info

@yegor256 @HDouss I've proposed something in #97 to finish that work.

@HDouss this seems to be already the case in latest version

@victornoel Indeed. Thanks

@HDouss this is solved already, use version 0.50.4

0crat commented

Job gh:jcabi/jcabi-parent#94 is not assigned, can't get performer