您好,我正在尝试以下测试场景
def test_main(monkeypatch):
with patch("library.mockme.MockMe") as mock:
message = MainObejct().message()
assert message == "Mock me"
主对象实现
from library.mockme import MockMe
class MainObejct():
def __init__(self):
self.mock_me = MockMe()
def message(self):
return self.mock_me.message
这里的问题是,MockMe对象没有修补。。。但是,如果我将导入更改为from library import mockme.MockMe
,它实际上可以工作,有没有办法让它与我的原始实现一起工作
谢谢
嗨,这是所有关于哪里和什么补丁。在您的示例中,您正在模拟
mockme
模块中的MockMe
类。您需要模拟导入到main.py
模块中的类。看看Python文档中的where to patch希望这有帮助
test_main.py
main.py
library/mockme.py
相关问题 更多 >
编程相关推荐