带有mockito的存根python时间方法(when)

2024-05-10 08:41:32 发布

您现在位置:Python中文网/ 问答频道 /正文

在代码中,我使用python方法time()

from time import time

# Some code
t=time()
# Some more code

主.py

在我的测试中,我想用mockito存根time方法,以始终返回相同的值:

import time
#...
when(time).time().thenReturn(2)
#...

测试.py

但是,除非我更改main中调用time方法的方式,否则这是行不通的:

import time
t=time.time()

main_2.py

我希望避免更改主代码,或者至少理解为什么需要更改才能使存根工作。你知道吗


Tags: 方法代码frompyimporttimemainmore
1条回答
网友
1楼 · 发布于 2024-05-10 08:41:32

你在嘲笑错误的模块。您的代码在其自己的命名空间中使用的是名称time,而不是time模块中的名称,尽管两者引用的函数相同。你知道吗

如果test.py正在用import main导入main.py,则使用

when(main).time().thenReturn(2)

相关问题 更多 >