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]