前置断言测试是否取代了函数规范中的假设,反之亦然?

时间:2015-07-14 15:27:35

标签: python testing assert assertion

我很困惑,因为何时在我的python函数中使用断言测试。如果我指定关于函数​​的输入参数的假设,我应该假设正确的输入被输入到函数中,还是应该使用断言来检查规范中枚举的输入参数的条件?

1 个答案:

答案 0 :(得分:1)

如果您正在撰写"公开"函数,我相信pythonic的方法是检查参数(使用if,而不是assert),如果它们无效,则引发异常,类型和信息/消息旨在提供as尽可能多的信息。

如果您正在编写专为内部使用而设计的功能,那么使用assert检查参数似乎对我来说是个好主意。