2024-03-29 14:51:52 发布
网友
我正在编写一个pytest插件,它需要警告用户在收集阶段遇到的异常情况,但是我没有找到任何方法从我的pytest_generate_tests函数内部一致地将输出发送到控制台。你知道吗
pytest_generate_tests
只有在添加-s选项时,print和logging模块的输出才会出现在控制台中。我找到的所有与日志记录相关的文档都是指在测试内部进行日志记录,而不是从插件内部进行日志记录。你知道吗
-s
print
logging
最后,我使用了pytest警告基础结构,方法是使用pytest config对象的undocumented _warn()方法,该对象传递给各种钩子,或者可以从各种钩子访问。例如:
config
_warn()
def pytest_generate_tests(metafunc): [...] if warning_condition: metafunc.config._warn("Warning condition encountered.") [...]
这样,如果报告了任何警告,您将在单行摘要中获得额外的pytest-warnings,并且您可以通过向pytest命令行添加'-rw'选项来查看警告的详细信息。你知道吗
pytest-warnings
pytest
最后,我使用了pytest警告基础结构,方法是使用pytest
config
对象的undocumented_warn()
方法,该对象传递给各种钩子,或者可以从各种钩子访问。例如:这样,如果报告了任何警告,您将在单行摘要中获得额外的
pytest-warnings
,并且您可以通过向pytest
命令行添加'-rw'选项来查看警告的详细信息。你知道吗相关问题 更多 >
编程相关推荐