Skip to content

JUnit4 to JUnit5 migration #13948

Open
Open
@UngureanuSerg

Description

@UngureanuSerg

Hi team,

A proposal to moving on after the adoption of java8+ is to start the migration from junit4 to jnuit5.

  • JUnit 4 never advanced beyond Java 7, missing out on a lot of features from Java 8. JUnit 5 makes good use of the Java 8 features.
  • A single jar library contains the entire framework. We need to import the whole library, even when we only require a particular feature. In JUnit 5, we get more granularity and can import only what's necessary.
  • Only one test runner can execute tests at a time in JUnit 4 (e.g. @RunWith(Parameterized.class)
    or provide druid extension with the adoption of JUnit Platform). JUnit 5 allows multiple runners to work simultaneously.

As a strategy for the approach I would suggest to migrate one module at a time(it will be easier for the prs) and create tasks for the rest of the modules. As a starting point we can still depend on JUnit Vintage for backward compatibility with JUnit 4 but gradually moving to JUnit5.

I think all the point mentioned describes why it would be beneficial for apache druid as well as I would like to pick this issue if the rest of the community is interested.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions