все Python 3unittestфункция
unittest.registerResult()
прерывание по Ctrl+C
Регистрирует объект TestResult у обработчика Ctrl+C, чтобы прерывание останавливало именно этот прогон, а не убивало процесс.
Синтаксис
unittest.registerResult(result)
Нужна только тому, кто запускает тесты своим кодом через suite.run(result): TextTestRunner регистрирует свой результат сам. Без installHandler() регистрация ничего не меняет — Ctrl+C по-прежнему бросит KeyboardInterrupt. Модуль хранит слабую ссылку, так что зарегистрированный результат не мешает сборке мусора.
Примеры
import os
import signal
import unittest
unittest.installHandler()
result = unittest.TestResult()
unittest.registerResult(result)
os.kill(os.getpid(), signal.SIGINT) # имитация Ctrl+C
print(result.shouldStop) # → True
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности