Подтвердить что ты не робот

Распределенное тестирование модулей и покрытие кода в Python

В моем текущем проекте есть политика покрытия 100% кода из его модульных тестов. Наша служба непрерывной интеграции не позволит разработчикам продвигать код без 100% -ного охвата.

По мере роста проекта, у нас есть время для запуска полного набора тестов. Хотя разработчики обычно запускают подмножество тестов, относящихся к коду, который они меняют, они обычно выполняют один окончательный полный запуск перед отправкой в ​​CI, а сам сервер CI также запускает полный набор тестов.

Единичные тесты по своему характеру являются очень параллелизуемыми, поскольку они являются автономными и без гражданства от теста к тестированию. Они возвращают только две части информации: pass/fail и строки кода. Решение map/reduce похоже, что оно будет работать очень хорошо.

Существуют ли какие-либо рамки тестирования Python, которые будут запускать тесты в кластере машин с охватом кода и объединить результаты при завершении?

4b9b3361

Ответ 1

Я не знаю каких-либо схем тестирования, которые будут запускать тесты, распределенные с группы машин, но нос поддерживает параллельные тесты на одном компьютере с помощью многопроцессорная.

Как минимум, это может быть хорошим местом для создания распределенной структуры тестирования

Ответ 2

Я думаю, что нет рамки, которая точно соответствует вашим потребностям.

Я знаю, что py.test имеет xdist плагин, который добавляет распределенных тестовых исполнителей. Вы можете использовать его для написания своей инфраструктуры CI поверх нее.

Ответ 3

Не совсем то, что вы ищете, но самое близкое, что я мог вспомнить, из групп Hadoop использует JUnit для тестирования с Hadoop. Вот сообщение . Как упоминалось в почтовом поиске документов gridunit.

Групповое тестирование с Hadoop распределенным способом очень интересно. Любые рамки вокруг этого будут очень полезны, но разработка структуры не должна быть очень сложной. Если интересно, дайте мне знать.