[New-bugs-announce] [issue46523] Test suite skips failing tests

Nikita Sobolev report at bugs.python.org
Tue Jan 25 10:42:34 EST 2022


New submission from Nikita Sobolev <mail at sobolevn.me>:

Here's what happened. We had an error in `test_typing.py`, which was silently ignored.

```
 ======================================================================
ERROR: setUpClass (test.test_typing.NewTypeTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\a\cpython\cpython\lib\test\test_typing.py", line 3917, in setUpClass
    UserId = NewType('UserId', int)
NameError: name 'NewType' is not defined

----------------------------------------------------------------------
Ran 396 tests in 0.085s

FAILED (errors=1, skipped=1)
test test_typing failed
```

Link: https://github.com/python/cpython/runs/4902363883?check_suite_focus=true

But, later the suite runner tried to rerun it:

```
0:09:12 load avg: 6.37 Re-running failed tests in verbose mode
0:09:12 load avg: 6.37 Re-running test_typing in verbose mode (matching: setUpClass)

1 re-run test:
    test_typing

1 test run no tests:
    test_typing
```

And since nothing matched `setUpClass` - no tests were executed and the CI went green instead of red.

What can we do?
1. Only schedule real `test_` item to be rerun, fail for everything else
2. Convert `setupClass` failure into the whole class rerun
3. Other options?

I would like to work on this, when we will decide which way is best.

----------
components: Tests
messages: 411620
nosy: sobolevn
priority: normal
severity: normal
status: open
title: Test suite skips failing tests
type: behavior
versions: Python 3.10, Python 3.11, Python 3.9

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue46523>
_______________________________________


More information about the New-bugs-announce mailing list