kennknowles commented on pull request #14272:
URL: https://github.com/apache/beam/pull/14272#issuecomment-813511169


   Yea, it is a tough problem. It doesn't really have to do with Google or any 
specific company.
   
   Judging by any data I can find, JUnit4 is still by far the dominant version 
in use. Why? JUnit5 isn't so much an upgrade but just a totally different 
project with a shared name and some similar concepts, and also with 
API/functionality regressions that are not a priority for JUnit team. The 
migration cost for a large organization is huge, as much as migrating to an 
unrelated test framework, and benefits not enough to justify the investment. It 
reminds me of Python 2 to 3.
   
   This is just my basic understanding of the current status.
   
   Why does Beam need to care about what test frameworks others are using? 
There are real reasons:
   
    - We export our "Beam Model Compliance" test suite via JUnit4 category. So 
it is a critical breaking change to do that differently.
    - So we also do want to support people running tests in their own 
infrastructure to test their runners.
    - And of course, being part of the dominant version gives network effects 
of the best maintenance and support via tooling.
   
   Of course, in the same spirit, if there are Beam users/contributors who want 
to run our tests in their infrastructure that uses JUnit5 it is nice to support 
them. So I very much support figuring out a way to help both to work.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to