python - 前提断言测试是否取代了功能规范中的假设,反之亦然?

标签 python testing assert assertion

<分区>

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

最佳答案

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

如果您正在编写供内部使用的函数,那么使用 assert 来检查参数对我来说似乎是个好主意。

关于python - 前提断言测试是否取代了功能规范中的假设,反之亦然?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31410922/

相关文章:

python - django 分页不适用于 django 过滤器

python - True Loop 无法正常工作时的套接字

c++ - 一行断言测试 STL 容器是否已排序

java - 如何对两个不同大小的列表使用assertNotEquals

java - 断言与 JUnit 断言

以意想不到的方式使用 Python 模块函数

python - 从数据集中过滤掉连续的行

javascript - 如何使用 rewirejs 和 chai-spies 模拟函数来测试它?

javascript - 在 Protractor 测试用例中从电子邮件中获取值

.net - 使用 MVC4 和 MvcContrib.TestHelper 测试路由