Как ограничить максимальное время работы для unit test?
В настоящее время я запускаю некоторые модульные тесты, которые могут занять много времени до сбоя или запуска неограниченного времени. В успешном тестовом прогоне они всегда будут завершены в течение определенного промежутка времени.
Возможно ли создать pytest unit test, который завершится с ошибкой, если он не завершится за определенное время?
Ответы
Ответ 1
вы можете установить плагин pytest-timeout, а затем пометить свои тестовые функции таймаутом в секундах.
@pytest.mark.timeout(300)
def test_foo():
pass
Посмотрите инструкции по загрузке и использованию плагинов на https://pypi.python.org/pypi/pytest-timeout