Как вы проверяете, что функция Python генерирует исключение? - PullRequest
627 голосов
/ 25 сентября 2008

Как написать тест, который завершается неудачно, только если функция не выдает ожидаемое исключение?

Ответы [ 11 ]

2 голосов
/ 21 октября 2010

Вы можете использовать assertRaises из модуля unittest

import unittest

class TestClass():
  def raises_exception(self):
    raise Exception("test")

class MyTestCase(unittest.TestCase):
  def test_if_method_raises_correct_exception(self):
    test_class = TestClass()
    # note that you dont use () when passing the method to assertRaises
    self.assertRaises(Exception, test_class.raises_exception)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...