Запретить запуск setup_module, teardown_module, если в модуле нет тестов, соответствующих атрибуту nose - PullRequest
0 голосов
/ 23 октября 2019

В моем конвейере я пытаюсь запустить модульные тесты до того, как все зависимости будут готовы. У меня есть тестовый файл, где все тесты помечены как интеграционные тесты. Когда я запускаю nosetests -a test_type=unit, ни один из этих интеграционных тестов не запускается, что работает должным образом. Тем не менее, он все равно запускает setup_module для них, что вызывает проблемы (поскольку зависимости не установлены).

Как предотвратить запуск функций настройки / разрыва? Не имеет смысла запускать их, если у модуля есть пустой набор тестов после фильтрации атрибутов.

test_integration_tests.py:

def setup_module():
    ..does something to mySQL table..


@attr(test_type='integration')
def test_this:
    pass


@attr(test_type='integration')
def test_this2:
    pass
...