2

一般来说,我对使用模拟和测试还很陌生。这是我第一次尝试模拟整个导入的模块。所以例如我有

try:
    import redis
except:
    redis = None

然后稍后在代码中我检查redis

if redis is None:
     return

如何将模拟对象或类设置到 redis 命名空间,这样我就不必在 CI 服务器上安装 redis?

4

1 回答 1

0

名称只是名称,您可以在文件/全局范围内将任何内容分配给“redis”名称,使用任何一个import或普通的旧分配。

像这样:

import mock_redis as redis

...或者:

def mock_redis(): pass

顺便说一句,您的例外条款应缩小为仅处理ImportError.

于 2012-07-06T04:34:25.653 回答