我有一些只在特定物理位置运行的功能,它是通过主机名知道的。这是在调用socket.gethostname()的cython模块中生成的。
是否存在使用socket.gethostname()进行测试的方法,它们与运行测试的主机有不同的数据?
发布于 2016-07-25 10:55:20
你可以用 module
import mock
import socket
with mock.patch("socket.gethostname", return_value="completely fake"):
print socket.gethostname()completely fake在stdout上打印。
mock与Python3.3及以上版本捆绑在一起(作为unittest.mock),并可作为Python2.6.x和更高版本的支持端口。上面的代码与Python2.7.x一起运行。
https://stackoverflow.com/questions/38559252
复制相似问题