Skip跳过用例

跳过(Skip)指,你希望如果某些条件得到满足你的测试用例才执行,否则Pytest应该完全跳过运行该用例
1. 跳过测试用例的最简单方法是使用skip装饰器标记它,可以传递一个可选的原因reason参数:
@pytest.mark.skip(reason="目前无法执行该用例")
def test_skip_2():
print("该用例不执行")
2.也可以在用例执行前进行某些前置条件检查,例如检查预期前置条件是否满足,比较值等
def test_skip_3():
if 3>2:
pytest.skip(",前置条件不满足,不执行该用例")
print("执行该用例1")
3.如果你希望特定条件地跳过某些用例,则可以使用skipif。下面的示例演示了,当Python版本小于3.6时跳过测试用例。
@pytest.mark.skipif(sys.version_info<(3,6),reason="需要Python3.6版本以上")
def test_function():
...

Xfail失败用例

xFail:将测试函数标记为预期失败
1.可以直接标记用例失败,也可以传递失败原因reason参数,例如:
@pytest.mark.xfail(reason="用例失败")
def test_xfail_2():
print("标记该用例失败")
2.也可以判断条件后决定是否失败,例如有个登录1,登录1成功后执行步骤2、步骤3,如果登录1失败,则步骤2、步骤3失败,代码如下:
@pytest.fixture()
def login():
return True
def test_bu_1(login):
if not login:
pytest.xfail()
print("步骤1执行")
def test_bu_2(login):
if login:
pytest.xfail()
print("步骤2执行")
3.与skipif一样,你也可以在特定平台上标记你对失败的期望:
@pytest.mark.xfail(sys.version_info >= (3,6),reason="Python3.6 API变更")
def test_function():
...

Pytest学习6-跳过或xfail失败的用例的更多相关文章

  1. pytest学习8-运行上次执行失败的用例

    该插件提供了两个命令行选项,用于重新运行上次pytest调用的失败: --lf,--last-failed- 只重新运行上次失败的用例,如果没有失败则全部运行 --ff,--failed-first- ...

  2. Pytest学习(十一)- 失败重跑插件pytest-rerunfailures的使用

    环境依赖 Python 3.5, 最高 3.8, or PyPy3 pytest 5.0或更高版本 插件安装 pip3 install pytest-rerunfailures -i http://p ...

  3. pytest学习纪要123-针对经常用到的内容详实记录

    pytest123 本文主要参考:https://www.cnblogs.com/yoyoketang/tag/pytest 如有侵权,请站内联系我 目录 pytest123 1.setup和tear ...

  4. Pytest学习(一)- 入门及基础

    前言 十一也赶上自己刚出院,本想在十一放假前用假期刷完Pytest的,结果被希洛克神话吸引,再次回归毒奶粉,一直奋斗到距离上班还有两天,引导石刷没了,就没了智慧. 当然也没出过神话,结果一怒之下卸载, ...

  5. Git学习之常见错误 git push 失败

    Git学习之常见错误 git push 失败 问题描述: git push Counting objects: , done. Delta compression using up to thread ...

  6. ThinkPHP5如何修改默认跳转成功和失败页面

    ThinkPHP5如何修改默认跳转成功和失败页面 一.总结 一句话总结:直接修改默认跳转页面对应的模板文件的路径:'dispatch_success_tmpl' => APP_PATH . 'i ...

  7. JavaWeb学习——页面跳转方式

    JavaWeb学习——页面跳转方式 摘要:本文主要学习了请求转发和响应重定向,以及两者之间的区别. 请求转发 相关方法 使用HttpServletRequest对象的 getRequestDispat ...

  8. [转载]pytest学习笔记

    pytest学习笔记(三)   接着上一篇的内容,这里主要讲下参数化,pytest很好的支持了测试函数中变量的参数化 一.pytest的参数化 1.通过命令行来实现参数化 文档中给了一个简单的例子, ...

  9. pytest学习2-运行方式

    pytest常用运行方式 运行目录及子包下的所有用例: pytest 目录名 运行指定模块所有用例: pytest test_reg.py pytest test_reg.py::TestClass: ...

随机推荐

  1. PHP0018:PHP 图像处理

  2. vue(四)--属性绑定

    v-bind通过v-bind进行属性绑定v-bind:href, 可以简写成 :href <body> <div id="app"> <a v-bin ...

  3. 纪中20日c组模拟赛T1 2121. 简单游戏

    T1 2121. 简单游戏 (File IO): input:easy.in output:easy.out 时间限制: 1000 ms  空间限制: 262144 KB  具体限制 Goto Pro ...

  4. Centos7 虚拟机安装增强功能

    1 yum update kernel -y yum install kernel-headers  kernel-devel gcc make -y init 6 2 菜单栏--设备--安装增强工具 ...

  5. ps调整图片指定区域的颜色,两种方法

    参考链接:http://tech.wmzhe.com/article/12329.html

  6. Anaconda 常用命令

    目录 包管理 环境管理 共享环境设置 包管理 安装包 conda install xxx conda install pandas ; conda install pandas numpy ; 同时安 ...

  7. 如何调试TaskPaper的JavaScript上下文?

    Mac 上的纯文本 GTD 工具TaskPaper for Mac(纯文本任务管理器)是一款适用于Mac操作系统的软件.如何调试TaskPaper的JavaScript上下文?[dl]15-1068[ ...

  8. 工控安全-PLC指纹提取的几种方法

    前言:PLC为可编程逻辑控制器,采用S7协议.其硬件本身存在许多漏洞,可以利用kali里面的漏洞模块或者modbus工具对其进行攻击,甚至直接可以进行未授权访问,只要其开启对外网的端口服务,那么我们就 ...

  9. Charles抓包问题

    Charles抓包问题 抓包失败解决方法之一:在proxy下的Recording Setting找到解决方法 找到里面的include 把勾去掉,点击OK,然后就恢复正常可以抓包了.

  10. 0级搭建类014-Red Hat Enterprise Linux 7.6 安装

    RHEL 7.6 操作系统安装 这个很简单的嘛?有什么好讲的?