Исключения не всплывают из LiveServerTestCase
Мы используем LiveServerTestCase с Selenium для интеграционных тестов многостраничного пользовательского потока.
Один из потоков вызывает исключение во время выполнения, но тест проходит. Исключение видно в журналах тестирования, но не приводит к отказу теста.
Упрощенный пример:
class SmokeTest(LiveServerTestCase):
def this_should_fail_but_passes(self):
driver = webdriver.Chrome()
driver.get('/home')
# This test passes
class HomeView(TemplateView):
def get(self, request, *args, **kwargs):
raise Exception("You would think the test would fail, but it doesn't.")
Тест проходит, хотя исключение видно в журналах...
...
raise Exception("You would think the test would fail, but it doesn't.")
Exception: You would think the test would fail, but it doesn't.
.
----------------------------------------------------------------------
Ran 1 test in 2.248s
OK
Похоже, основная причина заключается в том, что LiveServerTestCase запускает отдельный экземпляр сервера, и ошибки времени выполнения, которые он испытывает, регистрируются, но не всплывают в виде исключений для клиента тестирования.