前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >pytest 测试框架学习(12):pytest.deprecated_call

pytest 测试框架学习(12):pytest.deprecated_call

作者头像
Mokwing
发布于 2020-09-08 03:16:19
发布于 2020-09-08 03:16:19
50700
代码可运行
举报
文章被收录于专栏:MokwingMokwing
运行总次数:0
代码可运行

pytest.deprecated_call

含义

deprecated_call: 是一个上下文管理器,可确保代码块触发 DeprecationWarning 或者 PendingDeprecationWarning; 源码:

deprecated_call 可以将函数当做参数传入,后面跟上参数。

使用

  1. 函数不传参
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import warnings
def api_call_v2():
	warnings.warn('use v3 of this api', DeprecationWarning)
	return 200
def test_deprecated_call():
	with deprecated_call():
		assert api_call_v2() == 200
  1. 函数传参,并当做参数传入 deprecated_call 中
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import warnings
from pytest import deprecated_call

def api_call_v2(*args, **kwargs):
    warnings.warn('use v3 of this api', DeprecationWarning)
    return kwargs.get("b")

def test_deprecated_call():
    assert deprecated_call(api_call_v2, 123, 456, a=1, b=2, c=3) == 2

这个函数最主要的其实是将被标记了 DeprecationWarning 或者 PendingDeprecationWarning 的函数能够正常被调用,不会在执行时出现 相应的 warning 信息。

直接调用,弹出警告:

使用 deprecated_call,没有警告显示:

说明:本篇参考官网并加入自己些许理解翻译而来,觉得有用,可以点赞和赞赏哦(^ v ^),谢谢支持;如果有不足地方,可留言评论。后续将继续更新。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/07/13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
pytest 测试框架学习(14):pytest.warns
warns: 使用 pytest.warns 可以检查代码是否发出特定的警告信息,使用方法与 raises 类似。 源码:
Mokwing
2020/09/08
6980
Pytest(十) pytest Fixture(三)
固件的名称默认为定义时的函数名,如果不想使用默认,可以通过 name 选项指定名称:
雷子
2022/04/06
7830
Pytest(十) pytest Fixture(三)
有史以来最全的异常类讲解没有之一!第三部分爆肝4万字,终于把Python的异常类写完了!最全Python异常类合集和案例演示,第三部分
下面的代码尝试通过修改 Python 的内部数据结构来模拟触发 SystemError 的场景。请注意,这种做法是非常危险和不推荐的,因为它可能导致 Python 解释器崩溃或行为异常。
小白的大数据之旅
2024/11/20
2740
有史以来最全的异常类讲解没有之一!第三部分爆肝4万字,终于把Python的异常类写完了!最全Python异常类合集和案例演示,第三部分
python的warnings模块
Python 通过调用 warnings 模块中定义的 warn() 函数来发出警告。警告消息通常用于提示用户一些错误或者过时的用法,当这些情况发生时我们不希望抛出异常或者直接退出程序。警告消息通常写入 sys.stderr,对警告的处理方式可以灵活的更改,例如忽略或者转变为为异常。警告的处理可以根据警告类别,警告消息的文本和发出警告消息的源位置而变化。对相同源位置的特定警告的重复通常被抑制。
狼啸风云
2019/08/31
7.1K0
Python - 警告模块 warnings
从概念上讲,警告过滤器维护着一个经过排序的过滤器类别列表;任何具体的警告都会依次与列表中的每种过滤器进行匹配,直到找到一个匹配项;过滤器决定了匹配项的处理方式。每个列表项均为 ( action , message , category , module , lineno ) 格式的元组,其中:
为为为什么
2022/11/24
1.7K0
Pytest Pytest源码分析
这里的main函数为从_pytest/config/__init__.py定义的全局函数--main函数
授客
2021/03/04
2.2K0
pytest 测试框架学习(5):pytest.skip
skip 和 上一篇 fail 一样,也有两个参数,第一个参数 msg 作用应该是一样的,会在日志中输出一个提示信息;第二个参数类型也是一样,都是布尔型,但是这里默认的是 False。中间 的 * 号则代表这个方法仅限关键字传参。
Mokwing
2020/09/08
4490
pytest 测试框架学习(10):pytest.param
param: 在 pytest.mark.parametrize 中可以作为一个指定的参数进行调用。 源码:
Mokwing
2020/09/08
1.2K0
pytest 测试框架学习(11):pytest.raises
raises: 在断言一些代码块或者函数时会引发意料之中的异常或者其他失败的异常,导致程序无法运行时,使用 raises 捕获匹配到的异常,可以继续让代码正常运行。 源码:
Mokwing
2020/09/08
3.1K0
pytest 测试框架学习(3):pytest.approx
经过 API 我们已经了解到 pytest 中包括的 API 大致内容,接下来我们详细看看 Functions 中的 pytest.approx。
Mokwing
2020/09/08
1K0
【Python】已解决:FutureWarning: Function get_feature_names is deprecated; get_feature_names is deprecated
已解决:FutureWarning: Function get_feature_names is deprecated; get_feature_names is deprecated in 1.0 and will be removed in 1.2. Please use get_feature_names_out instead. warnings.warn(msg, category=FutureWarning)
屿小夏
2024/07/01
3020
【Python】已解决:FutureWarning: Function get_feature_names is deprecated; get_feature_names is deprecated
K8s部署docker镜像 Superset,无法查看配置的Hive连接信息
1、连接hive不是真正的hive,而是由kyuubi+spark并接入hive元数据库搭建的,用来替代运行效率慢的hive且也可以提供jdbc连接
框框不是欢欢
2022/10/13
1.8K0
K8s部署docker镜像 Superset,无法查看配置的Hive连接信息
Pytest实战Web测试框架
用例之间不应相互依赖,如果部分用例拥有相同的业务流程,如都需要,打开登录页->登录->点击添加商品菜单->进入添加商品页面 不建议使用以下方式,并使其按顺序执行。
赵云龙龙
2020/02/13
1.9K0
Pytest实战Web测试框架
python pytest测试框架
2.2使用装饰器@pytest.mark.usefixtures()修饰需要运行的用例
狼啸风云
2020/02/11
1.6K0
Python测试框架pytest(12)Hooks函数 - 其他Hooks函数
pytest_report_teststatus(report, config) 钩子函数返回结果类别,状态报告的短字母和详细单词。
wangmcn
2022/07/26
5600
Python测试框架pytest(12)Hooks函数 - 其他Hooks函数
NumPy 1.26 中文文档(四十三)
长度为 D 的序列,每个序列都是一个可选的(lower,upper)元组,给出如果边界没有在bins中显式地给出时要使用的外部箱边缘。序列中的 None 条目导致相应维度的最小值和最大值被用于。默认值 None 相当于传递了 D 个 None 值的元组。
ApacheCN_飞龙
2024/06/28
2660
妹子让我看她写的pytest,结果...
陆陆续续断更好久好久了,这么久发生了很多事情,也思考了很多事情。突然发现拖延症已经严重影响到了我。
Python攻城狮
2020/12/21
9610
理解unittest测试框架(二)框架核心——case
上文说到unittest框架的入口,知道了多种方式执行unittest的时候,框架是如何处理的。
点点寒彬
2020/03/18
8940
pytest文档3-pycharm运行pytest
上一篇pytest文档2-用例运行规则已经介绍了如何在cmd执行pytest用例,平常我们写代码在pycharm比较多 写完用例之后,需要调试看看,是不是能正常运行,如果每次跑去cmd执行,太麻烦,所以很有必要学习如何在pycharm里面运行pytest用例
上海-悠悠
2018/08/03
2.7K0
pytest文档3-pycharm运行pytest
pytest 测试框架学习(4):pytest.fail
fail:翻译过来大致意思为 执行测试输出给定的消息并将结果显示为失败。 源码:
Mokwing
2020/09/08
1.2K0
推荐阅读
相关推荐
pytest 测试框架学习(14):pytest.warns
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验