python - Python 支持哪些拼写错误/拼写错误?

标签 python python-3.x

Python 支持哪些拼写错误/打字错误?

不是诸如 is_dirisdir 之类的替代拼写,也不是 colorcolour 之类的替代拼写,而是实际上拼写错误的别名,例如 property 用于 property(不受支持)。

最佳答案

自 Python 3.5 beta 3 起 unittest.mock对象现在支持 assret代表assert -- 注意这不是关键字 assert , 但匹配正则表达式 assert.* 的模拟对象的任何属性或 assret.* .

一些解释:

创建模拟对象时,任何属性访问的默认设置都是返回一个新的 Mock , 除了一种情况:如果属性是 assert_called_with 之一, assert_called_once_with , assert_any_call , assert_has_calls , 和 assert_not_called ,在这种情况下,实际会运行一些代码。

问题是如果忘记了确切的名称并使用,例如 assert_called ,然后不是运行代码来检查模拟是否被调用,而是返回一个新的模拟,并且编写的测试通过而不是实际进行测试并可能失败。

解决这个问题 Mock现在提出一个AttributeError如果对以 assert 开头的属性进行任何访问.

此外assert , Mock还将提出 AttributeError如果对以 assret 开头的属性进行任何访问.

如果不想要额外的保护(对于 assertassret ),可以使用 unsafe=True创建 Mock 时.

关于python - Python 支持哪些拼写错误/拼写错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31546628/

相关文章:

event-handling - Python 3 的事件循环实现?

python - 用于展平嵌套列表的递归生成器

python - Tkinter:在框架类中创建多个框架

python - 当字符串列表交换为文本文件时程序停止工作

python - 为 Python 3 安装 IPython 时出错 : sys_platform == "darwin" and platform_python_implementation == "CPython"

python - 在python中从键盘读取原始输入

Python 变量和方程

用于转换函数或方法的输入和/或输出的 Python 装饰器

python - 如何将字符串的元素放入具有特定行为的列表中

python - 如何将 @shared_task 装饰器用于基于类的任务?