[英]Mocking a script with no `if __name__=="__main__":` block
假设我的根目录中有文件main.py
和common.py
。 这些代表我暂时不想接触的第三方模块。 假设我还有一个test.py
文件,我想用它来测试main.py
。
common.py
包含以下内容:
def hello():
print("hello")
main.py
包含以下内容:
from common import hello
hello()
有没有办法在test.py
中修补hello
function 以便导入main.py
将使用模拟的 function? 例如,我想用猴子补丁hello
打印出goodbye
。
很简单:
import common
common.hello = lambda: print("goodbye")
import main
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.