Выполнение юнит-теста Python через LSF - PullRequest
3 голосов
/ 26 августа 2011

Мне нужно распараллелить мои юнит-тесты на python, которые я написал, используя модуль unittest по умолчанию. Я пытаюсь выбрать между двумя подходами:

  1. продолжайте использовать unittest , но используйте пользовательский «многопроцессный» бегун, который может порождать тест с использованием Platform LSF (инструмент удаленного выполнения), пример можно найти в TestOOB проект.
  2. Используйте py.test и настройте плагин pytest-xdist для запуска LSF вместо SSH.

Я склоняюсь к # 1, так как у меня уже есть рабочая установка, в частности, генерация набора тестов (которая использует генератор, который анализирует электронную таблицу Excel и не является тривиальным)

Есть ли какие-либо рекомендации относительно конкретного подхода?

Примечание: моя компания использует LSF, и я должен использовать его для обмена ресурсами с другими командами.

1 Ответ

2 голосов
/ 08 ноября 2011

Сначала я бы попытался просто установить "pytest-xdist" из pypi и запустить существующие тесты с "py.test -n 5" в 5 параллельных процессах. Если это в основном работает, это означает, что изменение pytest-xdist для использования транспорта LSF является целесообразным вариантом. По сути, вам нужно изучить расширение execnet (http://codespeak.net/execnet), которое является базовой библиотекой для распределения выполнения. HTH.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...