Я использую python
рамки unittest
. Можно ли указать способностями каркаса тайм-аут для теста? Если нет, можно ли изящно указать timeout
для всех тестов, а для некоторых отдельных тестов - личное значение для каждого из них?
Я хочу определить global timeout
для всех тестов (они будут использовать его по умолчанию) и тайм-аут для некоторого теста, который может занять много времени.Как указать время проверки для python unittest?
13
A
ответ
13
Насколько я знаю unittest
не содержит поддержки тайм-аутов тестов.
Вы можете попробовать timeout-decorator
библиотека от PyPI. Нанести декоратора на отдельных тестов, чтобы сделать их прекратить, если они слишком долго:
import timeout_decorator
class TestCaseWithTimeouts(unittest.TestCase):
# ... whatever ...
@timeout_decorator.timeout(LOCAL_TIMEOUT)
def test_that_can_take_too_long(self):
sleep(float('inf'))
# ... whatever else ...
Чтобы создать глобальный тайм-аут, вы можете заменить называть
unittest.main()
с
timeout_decorator.timeout(GLOBAL_TIMEOUT)(unittest.main)()
Смежные вопросы
- 1. Как сортировать тесты проверки python unittest?
- 2. Как использовать Python unittest для проверки иерархии классов?
- 3. Как указать конкретную настройку и отключение теста в python unittest
- 4. Использование Python Unittest для проверки результатов в массиве
- 5. личиночной UnitTest проверки
- 6. Python: как я могу переопределить сложную функцию во время unittest?
- 7. Использование unittest для проверки argparse - ошибки выхода
- 8. Как указать дату и время в python?
- 9. Python: Время ввода проверки
- 10. как сделать Python unittest для цикла while?
- 11. UnitTest как для Python 2 и 3
- 12. указать время выполнения потока (python)?
- 13. python unittest multiple mixins
- 14. Как указать группу проверки для @Valid?
- 15. Python UnitTest результаты файла
- 16. Python unittest setUp function
- 17. Как указать метод класса mock для теста на модуле python?
- 18. argparse and unittest python
- 19. Как написать случай Unittest для проверки обратного просмотра?
- 20. teardown method in unittest python
- 21. Python Unittest NoneType NameError
- 22. Python UnitTest - WebSocket сервер
- 23. Python unittest + PhantomJS
- 24. UnitTest в Python
- 25. Как указать рабочий каталог во время проверки R CMD?
- 26. классов Python и UnitTest
- 27. Python UnitTest вопрос
- 28. Python UnitTest и открытие
- 29. Python UnitTest вопросам импорта
- 30. python unittest howto
Интересно. Я не использую 'unittest.main()', но я надеюсь, что смогу принять 'decorator' для моего дела. Но мои тесты не идут в одном потоке ... – Jury
@Jury Проверьте раздел «Многопоточность» в ['timeout-decorator' reference] (https://pypi.python.org/pypi/timeout-decorator) - вы просто необходимо использовать 'timeout_decorator.timeout (TIMEOUT, use_signals = False)' в многопоточной среде. – Lav
Да, я это видел. Я попробую. – Jury