小编Phi*_*out的帖子

我如何修补/模拟logging.getlogger()

我有这个我要测试的代码:

log = logging.getLogger(__name__)


class A(object):
    def __init__(self):
        log.debug('Init')
Run Code Online (Sandbox Code Playgroud)

但我无法弄清楚如何断言使用'Init'调用log.debug

我尝试修补记录器,但检查它我只发现了一个getLogger模拟.

我确信它很简单,但我无法想象它!

在此先感谢您的帮助!

python unit-testing mocking python-3.x

24
推荐指数
3
解决办法
1万
查看次数

如何模拟缺少的属性

我有一行代码:

if not hasattr(class.a, u'c'):
    return
Run Code Online (Sandbox Code Playgroud)

如何模拟类,以便class.ac为hasattr返回False?

如果我这样做:

>>> from mock import MagicMock
>>> mock_class = MagicMock(spec=[u'a'])
>>> hasattr(mock_class, u'a')
True
>>> hasattr(mock_class, u'b')
False
>>> hasattr(mock_class.a, u'c')
True
Run Code Online (Sandbox Code Playgroud)

虽然我没有指定class.ac,但它被嘲笑!

python mocking

7
推荐指数
2
解决办法
2135
查看次数

标签 统计

mocking ×2

python ×2

python-3.x ×1

unit-testing ×1