繁体   English   中英

如何在unittest中模拟python模块

[英]How to mock python module in unittest

我在unittest中嘲笑时遇到问题。

#!/usr/bin/env python
import sys
sys.modules["foo.Bar"] = __import__("mock_bar")
import foo.Bar
print foo.Bar.__name__

我有一个ImportError例外在第4行,我不知道为什么,因为我有做在第3行一些模拟还有就是如何嘲笑进口参考这里 这是错误消息:

Traceback (most recent call last):
  File "test.py", line 4, in <module>
    import foo.Bar
ImportError: No module named foo.Bar

“ import foo.Bar”应该等于“ __import __('foo.Bar')”,在此之前,我黑客sys.modules假装模块“ foo.Bar”已经被导入。 为什么python仍然尝试导入foo.Bar并抱怨?

尝试在__import__行之前进行import foo :我认为这可能会有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM