我想用以下方式包装pytest html插件:
- 添加选项X
- 给定选项X,从报告中删除数据
我可以添加实现pytest_addoption(parser)
函数的选项,但在第二件事上遇到了麻烦。。。
我能够做的是:实现一个钩子frmo pytest html。然而,我必须访问我的选项X,才能做什么。问题是,pytest-html的钩子没有将"request"对象作为参数,所以我无法访问选项值。。。
我能有额外的钩子参数吗?或者类似的东西?
您可以将附加数据附加到报表对象,例如通过pytest_runtest_makereport
挂钩周围的自定义包装器:
@pytest.hookimpl(hookwrapper=True)
def pytest_runtest_makereport(item, call):
outcome = yield
report = outcome.get_result()
report.config = item.config
现在,config
对象将可以在所有报告挂钩中通过report.config
访问,包括pytest-html
:
def pytest_html_report_title(report):
""" Called before adding the title to the report """
assert report.config is not None