Ожидаемый сбой считается как ошибка, а не как переданный - PullRequest
8 голосов
/ 13 декабря 2011

Я использую expectedFailure, потому что есть ошибка, которую я хочу записать, которую я не могу исправить прямо сейчас, но хочу вернуться к ней в будущем. Насколько я понимаю, expectedFailure состоит в том, что он будет считать тест пройденным, но в сводке говорится, что было х число ожидаемых отказов (аналогично тому, как он работает с пропущенными тестами).

Однако, когда я запускаю свой набор тестов, я получаю следующее:

$ ./manage.py test eav.QueryTest
Creating test database for alias 'default'...
.EE
======================================================================
ERROR: test_q_object_with_exclude (eav.tests.managers.QueryTest)
----------------------------------------------------------------------
_ExpectedFailure

======================================================================
ERROR: test_q_objects_unioned (eav.tests.managers.QueryTest)
----------------------------------------------------------------------
_ExpectedFailure

----------------------------------------------------------------------
Ran 3 tests in 1.095s

FAILED (errors=2)
Destroying test database for alias 'default'...

Я не уверен, что это связано с бегуном Джанго или я что-то не так делаю.

@unittest.expectedFailure
def test_q_object_with_exclude(self):
    # Everyone except Bob
    q_set = eav_m.Process.objects.exclude(
        Q(eav__details__city__contains='Y'))
    self.assertEqual(q_set.count(), 4)

Ответы [ 2 ]

7 голосов
/ 29 мая 2013

Ваше понимание expectedFailure верно.Ваша проблема в том, что эти тесты не терпят неудачу, они вызывают исключение, которое не совпадает с ошибкой.

Декоратор, который вы ищете, это skip.

0 голосов
/ 16 декабря 2011

Вам следует взглянуть на ТАК вопрос , потому что это неправильное поведение.Тест с expectedFailure декоратором не должен рассматриваться как провал , если тест не пройден.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...