2024-09-30 06:13:26 发布
网友
Python支持哪些拼写错误/拼写错误?在
不是交替拼写,如is_dirvsisdir,也不是colorvscolour,而是实际拼写错误的别名,例如proprety代表{}(不支持)。在
is_dir
isdir
color
colour
proprety
从python3.5beta3开始,unittest.mock对象现在支持assret代表assert,注意这不是关键字assert,而是匹配正则表达式assert.*或{}的模拟对象的任何属性。在
assret
assert
assert.*
一些解释:
创建模拟对象时,任何属性访问的默认值都是返回一个新的Mock,但有一种情况除外:如果该属性是assert_called_with、assert_called_once_with、assert_any_call、assert_has_calls和{}中的一个,在这种情况下,某些代码实际上会运行。在
Mock
assert_called_with
assert_called_once_with
assert_any_call
assert_has_calls
问题是,如果一个人忘记了确切的名称并使用了,例如,assert_called,那么不是运行代码来检查是否调用了mock,而是返回一个新的mock,而不是实际执行测试并可能失败的测试。在
assert_called
为了解决这个问题,Mock现在如果对以assert开头的属性进行任何访问,则会引发一个AttributeError。在
AttributeError
除了assert,如果对以assret开头的属性进行任何访问,Mock也将引发一个AttributeError。在
如果不需要额外的保护(对于assert和assret),那么可以在创建Mock时使用unsafe=True。在
unsafe=True
从python3.5beta3开始,unittest.mock对象现在支持}的模拟对象的任何属性。在
assret
代表assert
,注意这不是关键字assert
,而是匹配正则表达式assert.*
或{一些解释:
创建模拟对象时,任何属性访问的默认值都是返回一个新的}中的一个,在这种情况下,某些代码实际上会运行。在
Mock
,但有一种情况除外:如果该属性是assert_called_with
、assert_called_once_with
、assert_any_call
、assert_has_calls
和{问题是,如果一个人忘记了确切的名称并使用了,例如,
assert_called
,那么不是运行代码来检查是否调用了mock,而是返回一个新的mock,而不是实际执行测试并可能失败的测试。在为了解决这个问题,
Mock
现在如果对以assert
开头的属性进行任何访问,则会引发一个AttributeError
。在除了
assert
,如果对以assret
开头的属性进行任何访问,Mock
也将引发一个AttributeError
。在如果不需要额外的保护(对于
assert
和assret
),那么可以在创建Mock
时使用unsafe=True
。在相关问题 更多 >
编程相关推荐