Overriding _callTestMethod (which was introduced in python 3.8) is a less hacky way to detect tests that fail to use @gen_test where needed. It's not documented, but since Python 3.11 has introduced a similar check to the standard library we'll be able to remove it in the near future.
The major impetus for this change is an incompatibility with Pytest 8.2, which has made a change that tries to instantiate test classes at discovery time without an existing method name.
Overriding _callTestMethod (which was introduced in python 3.8) is a less hacky way to detect tests that fail to use
@gen_test
where needed. It's not documented, but since Python 3.11 has introduced a similar check to the standard library we'll be able to remove it in the near future.The major impetus for this change is an incompatibility with Pytest 8.2, which has made a change that tries to instantiate test classes at discovery time without an existing method name.
Fixes #3375 Closes #3374