TestCase文档指定assert方法可以使用可选的msg
关键字参数来指定向断言添加上下文的消息:
所有断言方法都接受一个 msg 参数,如果指定,该参数将用作失败时的错误消息(另请参阅longMessage)。
有没有办法使用unittest.mock断言方法,特别是assert_any_call
?
答案 0 :(得分:1)
查看assert_any_call
的{{3}},邮件是硬编码的:
raise AssertionError(
'%s call not found' % expected_string
) from cause
此外,AssertionError
直接在代码中引发,而不是失败的assert
语句的结果。此模式后面是模块中的所有assert_*
方法。因此,除非您子类化并覆盖您感兴趣的方法,否则无法设置自定义消息。