我正在尝试对一个在内部调用其他两个函数的函数进行单元测试。如下所示
class A(BaseClass):
def functionA(self, var_a, var_b):
return self.another_fn_a(var_a).another_fn_b(var_b)
another_fn_a
并且another_fn_b
是此类扩展的基类的一部分,并返回同一类本身。
现在,我正在尝试测试 myfunctionA
以查看它是否使用正确的参数调用其他两个函数。我可以监视another_fn_a
,但监视another_fn_b
似乎不起作用。我的测试如下所示
def test_will_funcationA(mocker):
test_obj = ClassA()
spy_a = mocker.spy(test_obj, 'another_fn_a')
spy_b = mocker.spy(test_obj, 'another_fn_b')
test_obj.functionA("var_1", "var_2")
spy_a.assert_called_once_with("var_1")
spy_b.assert_called_once_with("var_2")
第一个断言似乎正在工作,但是,对于第二个断言,我得到断言错误,说 another_fn_b 没有被调用。
我在这里做错了什么?