问题标签 [magicmock]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 如何使用方法 MagicMock 对象列表并获取断言计数
我是使用 MagicMock 在 python 中进行单元测试的新手。我有以下代码在 python 中断言正确的方法计数:
我希望shooMethod()
在我的单元测试代码中执行该方法的断言调用计数,以查看其中的 N 个对象booObjectList
是否执行 N 次调用。上面的函数不是我的单元测试代码。test_methodFoo()
这是一种通过在我的单元测试类中创建新方法来测试的方法。我该怎么做?谢谢你的帮助。
python - 对于公共方法,Python 模拟补丁无法按预期工作
我正在尝试为我的烧瓶应用程序修补公共方法,但它似乎不起作用。
这是我的代码mrss.feed_burner
这就是我使用它的方式
这是我没有解析的测试。
python - Python mock() 不模拟返回值
我在使用 Python mock() 时遇到了一些麻烦,而且我还不够熟悉,无法弄清楚它发生了什么。
我有一个抽象的异步任务类,看起来像:
我想为此类的特定实例修补 createAsyncTask 方法。
我写的代码如下:
当我在队列中打印出 task_ent 时,我得到<MagicMock name='createAsyncTask()' id='140578431952144'>
当我在队列中打印出来cls.createAsyncTask
时,我得到<MagicMock name='createAsyncTask' id='140578609336400'>
我究竟做错了什么?为什么 createAsyncTask 不会返回 12?
python - 如何在模块级别取消设置 mock.MagicMock?
假设有人在 python 文件的头部将模块设置为 MagicMock:
这会导致麻烦,因为当我尝试运行整个单元测试列表时,moduleABC 将是一个模拟。
如何在其余文件中将其取消设置为实际的 moduleABC?
python - 测试我的对象将命令方法发送到另一个对象
我试图确保 Testme.command() 在 Dependency 实例上调用 bar() ,但我一直在做空。我正在使用 python -m unittest tests.test_config 运行它,并且此代码位于我项目中的 tests/test_config.py 中。
当我运行它时,它会失败,就像 bar() 从未被调用:AssertionError: Expected 'bar' to be called once。调用 0 次。
我应该如何测试 Testme().command() 调用 Dependency().bar()?
python - python mock类的默认init参数
我想模拟类构造函数中的默认参数:
我想DefaultConnection
在我的单元测试中进行模拟,但是当作为默认值传入时它不起作用。
python - Python内部实体模拟
我想测试一个方法,无论它是否调用临时内部对象的特定方法。(ConfigParser.read)
所以对象是在内部创建的,方法退出后就不能从外部访问了。
使用 python 2.7
在 foobar.py
我想测试是否调用了 config.read 。
据我了解,补丁装饰器是为此而制作的,但不幸的是,测试用例接收到的 MagicMock 对象与内部创建的对象不同,我无法靠近方法内部的对象。
我试过这样:
问题是: - mock_foobar 是在 self.myfoobar.method 在内部创建 ConfigReader 之前创建的。- 调试 mock_foobar 时有关于先前调用的内部数据,但没有“读取”属性(用于模拟读取方法的内部 MagicMock)
当然,一种出路是重构并给 .read() 或init () 一个 ConfigReader 对象,但并不总是可以更改代码,我想在不接触模块的情况下掌握方法的内部对象正在测试中。
python - 修补python类之外的方法
我有兴趣修补一个文件中由另一种方法调用的方法。示例 - original.py 文件包含 -
我想为这个文件编写单元测试,比如说叫它 test.py
如何使用补丁和模拟模块来测试 original.py。我希望 A() 始终返回 MagicMock() 对象而不是整数。
python - 未解决的参考 MagicMock
我想在 Python 测试中模拟一个方法。为了做到这一点,我需要 MagicMock,我尝试像这样导入它:
即使我在 PyCharm 中单击了几次安装,虽然我在 Preferences/Project Interpreter 下看到了 magicmock 0.0.3,但我收到了这个错误:
我在这里看到的导入声明。我错了什么?
mocking - Python unittest mock:通过参数化类对象模拟类函数?
在lib/thing.py
:
在app/thing.py
:
在test/test_thing.py
中,我想在lib.thing.Class.class_function1
使用模拟的 Class() 对象调用 function2 时进行修补,以引发一个AttributeError
应该可以test_function2
畅通无阻的 perc。像这样的东西(不起作用):