gpt4 book ai didi

python - pytest-html 自定义

转载 作者:行者123 更新时间:2023-12-04 16:46:24 25 4
gpt4 key购买 nike

我正在使用 pytest-html 插件为我的测试用例生成报告。如果脚本失败,我想添加一个行项目。所以这是我的代码---

import pytest

@pytest.mark.hookwrapper
def pytest_runtest_makereport(item, call):
pytest_html = item.config.pluginmanager.getplugin('html')
outcome = yield
report = outcome.get_result()
extra = getattr(report, 'extra', [])
if report.when == 'call':
# always add url to report
extra.append(pytest_html.extras.url('http://www.example.com/'))
xfail = hasattr(report, 'wasxfail')
if (report.skipped and xfail) or (report.failed and not xfail):
# only add additional html on failure
extra.append(pytest_html.extras.html('<div>Additional HTML</div>'))
report.extra = extra

def test_sayHello():

assert False, "I mean for this to fail"
print "hello"


def test_sayBye():
print "Bye"


I am running the scipt using -
pytest --html=report.html

我可以看到生成的报告,但它没有作为附加 HTML 的行项目。

还有一种方法可以让我在我的脚本之间添加这样的行项目到报告中。

真的很感谢帮助。

最佳答案

这应该有效:

@pytest.mark.hookwrapper
def pytest_runtest_makereport(item, call):
pytest_html = item.config.pluginmanager.getplugin('html')
outcome = yield
report = outcome.get_result()
extra = getattr(report, 'extra', [])
if report.when == 'call':
extra.append(pytest_html.extras.html('<p>some html</p>'))
report.extra = extra

关于python - pytest-html 自定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44307345/

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