Ответ 1
Мне полезно сначала запустить тесты и посмотреть, произошла ли какая-либо ошибка. Это помогает получить целостное представление об ошибке. Например, существует более одного теста, который терпит неудачу, и на какой из них следует смотреть в первую очередь.
Проанализировав это, это мой подход к циклу тестирования/отладки. В вашем тесте:
def test_foo_is_bar(self):
import ipdb
ipdb.set_trace()
self.assertEqual('foo', 'bar')
Теперь запустите тест с помощью:
nosetests -s tests/test_example.py
Флаг -s
поможет вам войти в режим ввода вместо получения исключения из носа.
Sidenote: У меня есть набор ярлыков для вставки import ipdb as pdb; pdb.set_trace()
в настройки IntelliJ (PyCharm), поэтому я могу вставить эту одну строку, чтобы остановить, где бы я ни захотел в своем коде.