+1 (binding)

On Wed, Jun 30, 2021 at 5:56 PM Qingsheng Ren <renqs...@gmail.com> wrote:

> Dear devs,
>
>
> As discussed in the thread[1], I’d like to start a vote on migrating the
> test framework of Flink project to JUnit 5.
>
>
> JUnit 5[2] provides many exciting new features that can simplify the
> development of test cases and make our test structure cleaner, such as
> pluggable extension models (replacing rules such as
> TestLogger/MiniCluster), improved parameterized test, annotation support
> and nested/dynamic test.
>
>
> The migration path towards JUnit 5 would be:
>
>
> 1. Remove JUnit 4 dependency and introduce junit5-vintage-engine in the
> project
>
>
>     The vintage engine will keep all existing JUnit4-style cases still
> valid. Since classes of JUnit 4 and 5 are located under different packages,
> there won’t be conflict having JUnit 4 cases in the project.
>
>
> 2. Rewrite JUnit 4 rules in JUnit 5 extension style (~10 rules)
>
>
> 3. Migrate all existing tests to JUnit 5
>
>
>     This would be a giant commit similar to code reformatting and could be
> merged after cutting the 1.14 release branch. There are many migration
> examples and experiences to refer to, also Intellij IDEA provides tools for
> refactoring.
>
>
> 4. Ban JUnit 4 imports in CheckStyle
>
>
>     Some modules ilke Testcontainers still require JUnit 4 in the
> classpath, and JUnit 4 could still appear as transitive dependency. Banning
> JUnit 4 imports can avoid developers mistakenly using JUnit 4 and split the
> project into 4 & 5 again.
>
>
> 5. Remove vintage runner and some cleanup
>
>
>
> This vote will last for at least 72 hours, following the consensus voting
> process.
>
>
> Thanks!
>
>
> [1]
>
> https://lists.apache.org/thread.html/r6c8047c7265b8a9f2cb3ef6d6153dd80b94d36ebb03daccf36ab4940%40%3Cdev.flink.apache.org%3E
>
> [2] https://junit.org/junit5
>
> --
> Best Regards,
>
> *Qingsheng Ren*
>
> Email: renqs...@gmail.com
>

Reply via email to