...如果您指定带有如下断言的消息:
assert a % 2 == 0, "value was odd, should be even"
然后没有断言 内省完全取而代之,消息将被简单地显示出来 在追溯中。
Python的内置unittest
模块也会这样做,除非您的TestCase
设置longMessage = True
。
具有良好的断言格式是测试开发人员友好,而自定义消息更符合业务要求/人性化。当你不在测试的上下文中时,自定义消息特别有用,即它可以回答断言在那里做的事情,而不必查看代码。所以,我想要两条消息。
有没有办法让py.test很好的断言内省和格式化并打印自定义消息?
答案 0 :(得分:2)
目前无法启用断言额外信息和消息。我认为可以添加,但不确定需要多少努力。到目前为止,这个问题还没有我所知。随意提出问题或尝试拉取请求。但请注意,如果您经过编写自定义人类可读消息的努力,您可能还可以从表达式中添加一些有趣的值。