При запуске nosetests
из командной строки, как вы указываете, что предупреждения без игнорирования следует рассматривать как ошибки?
По умолчанию предупреждения печатаются, но не считаются сбоями:
[snip]/service/accounts/database.py:151: SADeprecationWarning: Use session.add()
self.session.save(state)
[snip]/service/accounts/database.py:97: SADeprecationWarning: Use session.add()
self.session.save(user)
............
----------------------------------------------------------------------
Ran 12 tests in 0.085s
OK
Поскольку мы не хотим, чтобы наш код генерировал предупреждения, я не хочу, чтобы эта ситуация была OK
.
Спасибо!
Edit:
В идеале, что мне нужно, это опция командной строки nosetests, которая выдает warnings.simplefilter('error')
перед каждым тестом (и затем очищает его).
Любое решение, которое предполагает использование модуля warnings
в тестовом коде, похоже, побеждает точку. Я не хочу вручную редактировать каждый тестовый модуль, чтобы преобразовать предупреждения в ошибки. Кроме того, я не хочу, чтобы автор каждого тестового модуля мог забыть "включить" предупреждения.