В моем текущем проекте есть политика покрытия 100% кода из его модульных тестов. Наша служба непрерывной интеграции не позволит разработчикам продвигать код без 100% -ного охвата.
По мере роста проекта, у нас есть время для запуска полного набора тестов. Хотя разработчики обычно запускают подмножество тестов, относящихся к коду, который они меняют, они обычно выполняют один окончательный полный запуск перед отправкой в CI, а сам сервер CI также запускает полный набор тестов.
Единичные тесты по своему характеру являются очень параллелизуемыми, поскольку они являются автономными и без гражданства от теста к тестированию. Они возвращают только две части информации: pass/fail и строки кода. Решение map/reduce похоже, что оно будет работать очень хорошо.
Существуют ли какие-либо рамки тестирования Python, которые будут запускать тесты в кластере машин с охватом кода и объединить результаты при завершении?