我注意到pytest swallows /没有输出内部断言差异。我有一些库代码,包括它自己的断言,即:
assert d['key_a'] == d['key_b']
我正在运行的测试正在使用此库,显然存在失败:
assert d['key_a'] == d['key_b'] E AssertionError
有没有办法显示差异?即直接从测试模块调用时:
a = {'f': 10, 'g': 11} assert a['f'] == a['g'] E assert 10 == 11
答案 0 :(得分:1)
pytest.register_assert_rewrite
(https://docs.pytest.org/en/latest/writing_plugins.html?highlight=pytest.register_assert_rewrite#pytest.register_assert_rewrite)可以解决问题。