Python自动化测试之PyTest二次开发HOOK函数详解

一、HOOK函数详解

HOOK函数的定义
HOOK=钩子
钩子函数:
1、是个函数,在系统消息触发时被系统调用
2、不是用户自己触发的
3、使用时直接编写函数体
4、钩子函数的名称是确定,当系统消息触发,自动会调用。
比如:pytest_runtest_makereport

插件与hook函数关系:
插件就是用1个或者多个hook函数,也就是钩子函数构成的。如果想要编写新的插件,或者是仅仅改进现有的插件,都必须通过这个hook函数进行。所以想掌握pytest插件二次开发,必须搞定hook函数

【HOOK函数简单实践-修改pytest-html报告】
官方链接:https://pytest-html.readthedocs.io/en/latest/user_guide.html

【装饰器@pytest.hookimple(hookwrapper=True)】
@pytest.hookimple(hookwrapper=True)装饰的钩子函数,有以下两个作用:
(1) 可以获取到测试用例不同执行阶段的结果(setup call teardown)
(2) 可以获取钩子方法的调用结果(yield返回一个result对象)和调用结果的测试报告(返回一个report对象)

【HOOK函数排序/调用示例】
官方解释:https://docs.pytest.org/en/latest/how-to/writing_hook_functions.html
对于任何给定的钩子函数规格,可能存在多个实现,因此我们通常将钩子函数执行视为1:N的函数调用,其中N是已注

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值