在引发多个异常的测试用例中使用assertRaises()

时间:2018-09-17 20:16:10

标签: python unit-testing assertraises

是否可以将assertRaises与多种类型的异常一起使用。像

assertRaises(RuntimeError, "error message")
assertRaises(Exception, "exception message")

这两个错误都在我的代码中通过相同的调用出现在不同的地方。

我该如何编写singel assertRaises语句来处理这两个问题。

您可以想象,当仅提及一种执行时,单元测试用例就会失败。

1 个答案:

答案 0 :(得分:5)

直接从docs

  

测试以任何方式调用callable时引发异常   位置或关键字参数也传递给   assertRaises()。如果引发异常,则测试通过;如果异常,则测试通过   引发另一个异常,如果没有异常,则失败。 收件人   捕获一组异常中的任何一个,包含异常的元组   类可以作为异常传递。

因此,您的代码应类似于

provideSingleton