首页 > 解决方案 > pytest monkeypatch 一个返回两个值的函数

问题描述

我有如下功能,我想使用 monkeypatch 进行模拟

cmd_a, cmd_b = get_cmds()

所以我使用以下

monkeypatch.setattr('get_cmds', MagicMock())

它抛出

 ValueError: not enough values to unpack (expected 2, got 0)

有什么建议可以模拟这个功能吗?

标签: pythonpytestmonkeypatching

解决方案


所以这行得通。

 mock_get_cmds = MagicMock()
 mock_get_cmds.return_value = "test", "test"
 monkeypatch.setattr('get_cmds', mock_get_cmds)

推荐阅读