Несколько лайфхаков по дебагу flaky тестов. В примерах будет pytest, но это может быть вообще любая команда.

  1. Запускаем тест с ограничением на доступное CPU:

sudo -E env PATH=$PATH systemd-run -p CPUQuota="10%" --scope --uid=$USER --gid=$USER -- pytest -x tests/test_something.py

Мы тут пробовали для ограничения ресурсов UNIX-овые stress и cpulimit, но они делают не то, что нужно. Смотрели на Docker, но в него больно окружение пробрасывать. А вот systemd справился на удивление хорошо.

  1. Запускаем тест, пока не упадёт:

while pytest -x -v --pdb tests/test_something.py ; do :; done

Тут сразу с дебаггером (--pdb), потому что обычно так хочется не только воспроизвести падение теста, но и посмотреть, что же там внутри идёт не так.