解决方法
只要mock _save 方法即可
@mock.patch('storages.backends.s3boto.S3BotoStorage._save')
def test_create_edit_supporting_doc_post_success(self, mock_save):
mock_save.return_value = '/file.png'
img = SimpleUploadedFile("file.png", "file_content", content_type="image")
post_data = {
'product': self.dfp1.id,
'description': 'Description1',
'title': 'Title1',
'ordering': '1',
'is_active': 'on',
'type': 'MEDIA',
'document': img
}
pre_sd_count = SupportingDoc.objects.filter(product=self.dfp1).count()
response = self.client.post(reverse('investment_product:create_edit_supporting_doc',
kwargs={'sd_id': 0, 'type': 'media'}), post_data)
post_sd_count = SupportingDoc.objects.filter(product=self.dfp1).count()
self.assertEqual(post_sd_count, pre_sd_count + 1)