你如何测试两个字典是否与python中的pytest相等

新手上路,请多包涵

尝试使用 pytest 断言两个具有嵌套内容的字典彼此相等(顺序无关紧要)。执行此操作的 pythonic 方法是什么?

原文由 John Mike 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 445
2 个回答

不要花时间自己编写此逻辑。只需使用默认测试库提供的功能 unittest

 from unittest import TestCase
TestCase().assertDictEqual(expected_dict, actual_dict)

原文由 Vincent Claes 发布,翻译遵循 CC BY-SA 4.0 许可协议

pytest 的魔法足够聪明。通过写作

assert {'a': {'b': 2, 'c': {'d': 4} } } == {'a': {'b': 2, 'c': {'d': 4} } }

你将有一个关于平等的嵌套测试。

原文由 linqu 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题