gpt4 book ai didi

python - 用于 HTML 字符串的 pretty-print assertEqual()

转载 作者:搜寻专家 更新时间:2023-10-31 23:11:42 24 4
gpt4 key购买 nike

我想在包含 html 的 python 单元测试中比较两个字符串。

是否有一种方法可以以人类友好(类似差异)的版本输出结果?

最佳答案

一个简单的方法是从 HTML 中去除空格并将其拆分为一个列表。 Python 2.7's unittest (或向后移植的 unittest2 )然后给出列表之间人类可读的差异。

import re

def split_html(html):
return re.split(r'\s*\n\s*', html.strip())

def test_render_html():
expected = ['<div>', '...', '</div>']
got = split_html(render_html())
self.assertEqual(expected, got)

如果我正在为工作代码编写测试,我通常首先设置 expected = [],在 assert 之前插入一个 self.maxDiff = None 并让测试失败一次。然后可以从测试输出中复制粘贴预期列表。

您可能需要根据 HTML 的外观调整去除空格的方式。

关于python - 用于 HTML 字符串的 pretty-print assertEqual(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8006909/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com