當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python unittest.mock.Mock.call_args用法及代碼示例

用法:

call_args

這是None(如果尚未調用模擬),或者是上次調用模擬的參數。這將采用元組的形式:第一個成員,也可以通過 args 屬性訪問,是調用模擬的任何有序參數(或空元組),第二個成員也可以是通過kwargs 屬性訪問的是任何關鍵字參數(或空字典)。

>>> mock = Mock(return_value=None)
>>> print(mock.call_args)
None
>>> mock()
>>> mock.call_args
call()
>>> mock.call_args == ()
True
>>> mock(3, 4)
>>> mock.call_args
call(3, 4)
>>> mock.call_args == ((3, 4),)
True
>>> mock.call_args.args
(3, 4)
>>> mock.call_args.kwargs
{}
>>> mock(3, 4, 5, key='fish', next='w00t!')
>>> mock.call_args
call(3, 4, 5, key='fish', next='w00t!')
>>> mock.call_args.args
(3, 4, 5)
>>> mock.call_args.kwargs
{'key': 'fish', 'next': 'w00t!'}

call_args 以及列表 call_args_listmethod_callsmock_calls 的成員是 call 對象。這些是元組,因此可以將它們解包以獲取單個參數並做出更複雜的斷言。將調用視為元組。

在 3.8 版中更改:添加argskwargs特性。

相關用法


注:本文由純淨天空篩選整理自python.org大神的英文原創作品 unittest.mock.Mock.call_args。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。