python - 如何为模拟对象命名?
问题描述
如何unittest.mock
设置__name__
模拟函数的属性?
我做了以下事情:
func = Mock(name="foo")
print(func.__name__)
散发出AttributeError: __name__
我还尝试创建一个具有__name__
属性的自定义对象并将其传递给规范:
class f_mock:
def __init__(self,name):
self.__name__ = str(name)
fobj = f_mock("foo")
func = Mock(spec=fobj)
print(func.__name__)
它发出一个TypeError: __name__ must be set to a string object
解决方案
试试这个:
mock = MagicMock()
mock.configure_mock(name='my_name')
print(mock.name)
'my_name'
推荐阅读
- powershell - Powershell 自动登录到网站.....$ie.Document.getElementsByClassName
- .htaccess - 如何将htaccess中的重写转换为nginx?
- css - html中的自定义文本
- javascript - Webpack serve 不包括对 var 的导出
- java - 如何使用 JopenDocument 向 TableModel 添加行
- c++ - 关于重新声明友元函数的警告
- r - R - 创建各种链接供 rvest 使用
- php - Laravel 中的 Firestore 连接问题
- flutter - 如何显示/隐藏基于 android sdk 构建版本的小部件?
- algorithm - SML (NJ) 中的滑动窗口算法实现