2
С кодомnosetests: Получение трассировки стека на Ctrl + C
import unittest
import time
class SleepingTest(unittest.TestCase):
def test_that_gets_stuck(self):
for a in xrange(100000000000000000):
pass
я получаю этот выход
❯ nosetests use_nosetest.py
^C
----------------------------------------------------------------------
Ran 1 test in 4.267s
OK
Как вы можете видеть, я сделал Ctrl + C, чтобы прервать программу. Но нос говорит, что он прошел тест ОК. Я скорее надеялся, что он скажет, что тест не прошел и дал мне трассировку стека.
Есть ли способ, которым я могу получить трассировку стека, где мои тесты застряли?
Там нет ничего в тестовом случае сбоя. Чтобы получить трассировку стека, какое-то условие должно идти не так где-то между моментом запуска теста и моментом нажатия Ctrl + C. – ILostMySpoon
@ILostMySpoon, хорошо. Как разработчик python затем отлаживает, почему его/ее программа зависает в unittest? – Tarrasch