【问题标题】:access to result of mocked method with autospec使用 autospec 访问模拟方法的结果
【发布时间】:2017-02-10 19:47:37
【问题描述】:

已在整合测试:

with mock.patch.object(
   EmailMultiAlternatives, 'send', autospec=True,
   side_effect=EmailMultiAlternatives.send
) as mocked_mail_send:
   method_using_that_send()
   mocked_mail_send             # how to access here send's return value ?

模拟的目的是验证我的方法是否会调用外部方法,但我不希望完全模拟该发送方法并覆盖原始返回值。

【问题讨论】:

    标签: django unit-testing mocking


    【解决方案1】:

    发现在模拟中是不可能实现的。

    通过拆分测试解决:

    • 使用模拟send 进行单元测试
    • 集成测试测试仅来自外部send

    【讨论】:

      猜你喜欢
      • 2014-10-24
      • 2021-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多