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. 浏览器对象模型“BOM”-- window对象

    global对象 全局对象 所有的全局变量和全局方法,都可以归在window上 <!DOCTYPE html> <html lang="en"> <h ...

  2. .net生成PDF文件的几种方式

    以下为在.net mvc中,生成pdf的几种方式,资料都是在做项目时网上找的 1.使用Microsoft.Office.Interop.Word.dll将word转换为PDF dll可以单独下载,一般 ...

  3. Wannafly Winter Camp 2020 Day 5B Bitset Master - 时间倒流

    有 \(n\) 个点的树,给定 \(m\) 次操作,每个点对应一个集合,初态下只有自己. 第 \(i\) 次操作给定参数 \(p_i\),意为把 \(p_i\) 这条边的两个点的集合合并,并分别发配回 ...

  4. PP: Extracting statisticla graph features for accurate and efficient time series classification

    Problem: TSC, time series classification; Traditional TSC: find global similarities or local pattern ...

  5. H5_0024:对于事先无法确定css大小的情况,可以通过JS动态修改

            $(function(){             function Heights(){                 var WinH = $(window).height(); ...

  6. PAT (Basic Level) Practice (中文)1046 划拳 (15 分)

    划拳是古老中国酒文化的一个有趣的组成部分.酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字.如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒.两人同赢或两人同输 ...

  7. 线段树(lazy标记)-- 模板

    ], lazy[MAXN << ]; void PushUp(int rt) { ans[rt] = ans[rt << ] + ans[rt << | ]; } ...

  8. 探索drf执行流程之APIView源码分析

    Django REST framework 简介 现在新一代web应用都开始采用前后端分离的方式来进行,淘汰了以前的服务器端渲染的方式.而实现前后端分离是通过Django REST framework ...

  9. C# WPF过渡效果实现(C# WPF Material Design UI: Transitions)

    时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...

  10. linux--权限管理和用户管理

    权限 查看详细信息 ls -l - rw- r-- r-- 1 tom root 0 Jun 20 00:02 apple.txt 1 2 3 4 5 6 7 8 9 10 #1 文件的类型 #[-: ...