class A():
def tmp(self):
print("hi")
def b(a):
a.tmp()
要检查是否在 b 中调用了 tmp 方法,推荐的方法是
a = A()
a.tmp = MagicMock()
b(a)
a.tmp.assert_called()
但是这里的 tmp 被嘲笑了,并没有导致"hi"
被打印出来。
我希望我的单元测试检查是否调用了方法 tmp 而不模拟它。
这可能吗?
我知道在编写 unitest 时这不是一个标准的事情。但是我的用例(这有点棘手)需要这个。