我试图添加一些单元测试以确保抛出正确的错误(我的函数抛出KeyError
或RuntimeError
)
我已经尝试了assert func(bad_param) == KeyError
和assert isinstance(func(bad_param), KeyError)
但是这两个都不正确,我应该如何为此编写单元测试/当传递了一个错误的参数时,断言此函数将引发正确的异常的正确方法是什么
编辑:我没有使用unittest
库,我只是问Python std lib(https://docs.python.org/3/reference/simple_stmts.html)附带的assert
函数
您可以使用pytest.raises上下文管理器:
有关更多详细信息,请参见pytest docs
我在文档中没有找到任何解释如何期望多种异常类型的示例,但您可以通过检查exception info对象手动执行此操作:
我已经做了类似的事情,我使用了
try ... except
语句:下面是一个简单的工作示例(对于pytest-类似于单一测试):
您可以使用
try except
捕获异常,如相关问题 更多 >
编程相关推荐