pytest-yaml-sanmu(五):跳过执行和预期失败

图片

除了手动注册标记之外,pytest 还内置了一些标记可直接使用,每种内置标记都会用例带来不同的特殊效果,本文先介绍 3 种。

1. skip

skip 标记通常用于忽略暂时无法执行,或不需要执行的用例。

pytest 在执行用例时,如果发现用例有 skip 标记会无条件跳过,从而避免执行。

下面这个示例中,为用例使用了 skip 标记

# tests/test_mark_skip.yaml
test_name: 跳过用例mark:   - skip # 跳过该用例,不执行steps:  - request:      method: get      url: https://www.baidu.com

执行结果如下:

图片

图 1.skip 标记使用例被跳过执行

2. skipif

skipif 标记通常用于动态判断是否执行的用例。

pytest 在执行用例时,如果发现用例有 skipif 标记,会判断标记中的表达式:

  • 如果为真:跳过执行

  • 如果为假:正常执行

下面这个示例中,为用例使用了 skipif 标记

# tests/test_mark_skipif.yaml
test_name: 跳过条件为真mark:  - skipif: 1==1 # 跳过该用例,不执行steps:  - request:      method: get      url: https://www.baidu.com

执行结果如下:

图片

图 2. 条件为真时跳过执行

将 skipif 条件改为假

---test_name: 跳过条件为假mark:  - skipif: 1==2 # 不跳过该用例,正常执行steps:  - request:      method: get      url: https://www.baidu.com

可以正常执行了

图片

图 3. 条件为假时跳过执行

3. xfail

xfail 标记用来改变用例的预期结果。

一般来说,用例的预期结果执行过程中没有任何异常、错误。但是某些情况下可能预期用例执行过程中出现异常(例如断网)。

pytest 在执行用例时,如果发现用例有 xfail 标记:

  • 如果出现异常,将结果改为 xfailed,意外预期内的失败

  • 如果没有异常,将结果改为 xpassed,以为预期外的通过

创建三个用例,分别实现正常的通过、预期内外的失败,预期外的通过

# tests/test_mark_skipif.yaml
test_name: 失败的用例steps:  - request:      method: get      url: http://x1x2c3x5.x6 # 错误的地址,注定失败

---test_name: 预期内的失败mark:  - xfail # 通过标记预期失败steps:  - request:      method: get      url: http://x1x2c3x5.x6 # 错误的地址,注定失败
---test_name: 预期外的通过mark:  - xfail # 通过标记预期失败steps:  - request:      method: get      url: https://www.baidu.com # 正确的地址会成功

执行结果如下:

图片

图 4. 预期内的失败与预期外的通过

能看到这里说明是真爱,关注一下吧

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/749167.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

医药研发项目管理系统:适合CRO/CDMO企业使用的项目管理系统有哪些?

近日,北京民康百草医药科技有限公司(以下简称“民康百草”)与北京瑞杰智能科技有限公司(以下简称“瑞杰科技”)宣布达成战略合作,双方将共同打造一套符合民康百草企业特色的研发项目管理系统。该系统将基于…

ChatGPT自媒体创作秘籍:高效生成优质文章和视频

在这个信息爆炸的时代,自媒体已经成为人们获取信息、表达观点和分享生活的重要途径。而作为自媒体创作者,如何高效地生成优质内容,吸引更多的关注和互动,是每一个创作者都在思考的问题。今天,我将为大家分享利用ChatGP…

Linux CentOS Suhosin禁用php5.6版本eval函数详细图文教程

方法一:PHP_diseval_extension禁用 Linux CentOS 禁用php的eval函数详细图文教程_centos php 禁用 eval-CSDN博客 这个方法make报错,懒得费时间处理,直接用第二种 方法二:suhosin禁用 服务器只装了一个PHP5.6版本,一…

PLM系统选购指南:哪款品牌最适合你?

在选购PLM(Product Lifecycle Management)系统时,选择最适合自己企业的品牌至关重要。以下是一份清晰的PLM系统选购指南,帮助您根据企业的具体需求选择最合适的品牌: 1、明确企业需求: 首先,明…

【面试分享】嵌入式面试题常考难点之关于单链表的增删改查

文章目录 【面试分享】嵌入式面试题常考难点之关于单链表的增删改查一、单链表结点定义二、增(Create)——插入结点1. 于链表头部插入结点(头插法)2. 于链表尾部插入结点(尾插法)3. 于链表中间插入结点3-1.…

一步步带你解锁Stable Diffusion:老外都眼馋的 SD 中文提示词插件分享

大家好我是极客菌!今天我们继续来分享一个外国人都眼馋的 SD 中文提示词插件。 那我们废话不多说,直接开整。 SD 的插件安装,小伙伴们应该都会了吧,我这里再简单讲下哦,到「扩展」中的「可下载」中点击「加载扩展列表…

图像、色彩波和抗混叠

阮一峰的博文图像与滤波中分析了图像和波的关系,主要结论如下: 图像本质上就是各种色彩波的叠加。图像就是色彩的波动:波动大,就是色彩急剧变化;波动小,就是色彩平滑过渡。色彩剧烈变化的地方,…

车载系统类 UI 风格品质非凡

车载系统类 UI 风格品质非凡

桌面上的记事软件是什么 大家都在用什么记事软件

你是否经常因为琐事繁多而感到焦虑?是否曾在忙碌的工作中遗漏了重要的事项? 作为一名文字工作者,我深知记事的重要性。在繁杂的工作和生活中,我们需要的不仅仅是一个简单的记事本,而是一个能够帮助我们高效管理时间、…

Spring Boot如何集成Spring Data JPA?

🍅 作者简介:哪吒,CSDN2021博客之星亚军🏆、新星计划导师✌、博客专家💪 🍅 哪吒多年工作总结:Java学习路线总结,搬砖工逆袭Java架构师 🍅 技术交流:定期更新…

Http客户端-Feign 学习笔记

作者介绍:计算机专业研究生,现企业打工人,从事Java全栈开发 主要内容:技术学习笔记、Java实战项目、项目问题解决记录、AI、简历模板、简历指导、技术交流、论文交流(SCI论文两篇) 上点关注下点赞 生活越过…

Embedding的概念和展开

前言 本章,我们介绍一个非常细的细节技术。让我们微调大模型的一些特性和能力。 在大模型的AI套路演化过程中,其实经历了太多的技术革新和方式变化,Embedding其实也可能是其中一个高速湮灭的技术点之一。 对比LoRA现在大红大紫&#xff0c…

深度学习 - Transformer 组成详解

整体结构 1. 嵌入层(Embedding Layer) 生活中的例子:字典查找 想象你在读一本书,你不认识某个单词,于是你查阅字典。字典为每个单词提供了一个解释,帮助你理解这个单词的意思。嵌入层就像这个字典&#xf…

初识 Embedding,为何大家都基于它搭建私人智能客服?

随着 AI 技术的发展,大家在日常使用过程中经常会碰到一些目前 GPT4 也无法解决的问题: 无法获取个人私有数据信息,进行智能问答无法获取最新信息,LLM 模型训练都是都是有截止日期的无法定制化私有的专属模型,从而在某…

算法常见问题

1.c虚函数 虚函数是用来实现多态(polymorphism) 的一种机制。通过使用虚函数,可以在子类中重写父类中定义的方法,并且在运行时动态地确定要调用哪个方法。 在类定义中将一个成员函数声明为虚函数,需要使用 virtual 关键字进行修饰 。 通过指向…

山海相逢,因你而至!第九届全球边缘计算大会·深圳站圆满召开!

2024年6月22日,第九届全球边缘计算大会在深圳盛大开幕。本次盛会由边缘计算社区主办,并获得了EMQ、研华科技、华为等重量级单位的鼎力支持。大会汇聚了来自全球各地的业界精英,共同探讨边缘计算的前沿技术、应用趋势以及创新实践,…

Isaac Sim 9 物理(1)

使用Python USD API 来实现 Physics 。 以下内容中,大部分 Python 代码可以在 Physics Python 演示脚本文件中找到,本文仅作为个人学习笔记。 一.设置 USD Stage 和物理场景 Setting up a USD Stage and a Physics Scene USD Stage不知道怎么翻译&#…

docker 部署的 wordpress 接入阿里云短信服务 详细实操介绍

一、阿里云短信服务配置: 1、登录 阿里云短信服务 完成指引短信相关配置 2、创建RAM用户 并完成授权 出于安全及规范考虑 需通过RAM 用户来完成OponApl 接口调用,创建成功需完成短信接口(AliyunDysmsFullAccess、AliyunDysmsReadOnlyAccess…

【大模型】大模型微调方法总结(二)

1.Adapter Tuning 1.背景 2019年谷歌的研究人员首次在论文《Parameter-Efficient Transfer Learning for NLP》提出针对 BERT 的 PEFT微调方式,拉开了 PEFT 研究的序幕。他们指出,在面对特定的下游任务时,如果进行 Full-Fintuning&#xff0…

执行yum命令报错Could not resolve host: mirrors.cloud.aliyuncs.com; Unknown error

执行yum命令报错 [Errno 14] curl#6 - "Could not resolve host: mirrors.cloud.aliyuncs.com; Unknown error 修改图中所示两个文件: vim epel.repo vim CentOS-Base.repo 将所有的http://mirrors.cloud.aliyuncs.com 修改为http://mirrors.aliyun.com。 修改…
最新文章