我在設置單元測試時遇到了很多困難。我一直在使用補丁,但它的行爲並不像預期的那樣完全。爲什麼assert_called_with失敗?
我在我的測試功能的頂部裝飾: @mock.patch('WarningFactory.WarningAPIUpdate') @mock.patch('WarningFactory.SomethingElse') def test_send_tc_update(self, other_mock, api_mock):
然而,當我的函數結束時,我嘗試做如下聲明:
api_mock.send_warning.assert_called_with('IDQ20026', 'IDQ20026')
它失敗
我知道應該通過因爲我跑
print api_mock.mock_calls
給人
[call(u'test_api'), call().send_warning('IDQ20026', 'IDQ20026'), call().send_warning('IDQ24500', 'IDQ24500')]
我可以清楚地看到send_warning方法被調用正確的價值觀,所以爲什麼我的斷言失敗?
你有沒有想過這一個?有同樣的問題 – learningKnight
@learningKnight添加了一個答案,希望有所幫助。 – user3559247