In the spirit of this question from JUnit 3 to JUnit 4, are there any list of regular expressions to efficiently migrate from the junit 4 API to the junit 5 API
The tooling at the moment is not great, but improving:
IntelliJ: Migrates most annotations to JUnit 5 versions. Hovewer, does not do anything if your test file contains @Rules (e.g., ExpectedException) as of v2018.2.
Error Prone: contains built-in refactorings to automatically migrate various JUnit 4 exception-testing idioms (try/fail/catch/assert, ExpectedExceptions, @Test(expected = …)) to assertThrows, perfectly augmenting IntelliJ.
I recommend the following steps:
Add JUnit 5 artefacts to your test dependencies.
Install Error Prone compiler.
Configure it to produce a patch to migrate to assertThrows, enabling the following checks (the example Maven configuration is below):
TryFailRefactoring,
ExpectedExceptionRefactoring,
TestExceptionRefactoring.
Use IntelliJ built-in refactorings to migrate JUnit 4
annotations and methods to JUnit 5 counterparts.
I am not aware of any tools that help to automatically migrate Parameterized tests, or rules other than ExpectedException.