Pytest-钩子函数获取用例执行结果

获取测试用例的运行结果:

复制代码
#conftest.py
import pytest

@pytest.hookimpl(hookwrapper=True, tryfirst=True)
def pytest_runtest_makereport(item, call):
    print('------------------------------------')

    # 获取钩子方法的调用结果
    out = yield
    print('用例执行结果', out)

    # 3. 从钩子方法的调用结果中获取测试报告
    report = out.get_result()

    print('测试报告:%s' % report)
    print('步骤:%s' % report.when)
    print('nodeid:%s' % report.nodeid)
    print('description:%s' % str(item.function.__doc__))
    print(('运行结果: %s' % report.outcome))
复制代码
#执行用例,在控制台可查看结果:
------------------------------------
用例执行结果 <pluggy.callers._Result object at 0x00000257F14DF048>
测试报告:<TestReport 'testcases/goods_demo/test_v1_goods.py::TestGoods::test_v1_goods[goods_data1]' when='call' outcome='passed'>
步骤:call
nodeid:testcases/goods_demo/test_v1_goods.py::TestGoods::test_v1_goods[goods_data1]
description:查询商品
运行结果: passed

 

posted @   小哈别闹  阅读(215)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示