我熟悉其他语言的其他模拟库,例如 Java 中的 Mockito,但是 Python 的mock
库让我感到困惑。
我有以下课程要测试。
class MyClassUnderTest(object):
def submethod(self, *args):
do_dangerous_things()
def main_method(self):
self.submethod("Nothing.")
在我的测试中,我想确保在执行submethod
时main_method
调用了它并且使用正确的参数调用了它。我不想submethod
跑,因为它会做危险的事情。
我完全不确定如何开始。Mock 的文档非常难以理解,我不确定要模拟什么或如何模拟它。
我怎样才能模拟该submethod
功能,同时main_method
单独保留该功能?