Pytest如何使用skip跳过执行测试


Posted in Python onAugust 13, 2020

1、@pytest.mark.skip(reason=" ") -- 跳过执行测试函数

可传入一个非必须参数reason表示原因

import pytest
@pytest.mark.skip(reason="no reason")
def test_01():
  print("---用例a执行---")
class TestCase():
  @pytest.mark.skip(reason="no reason")
  def test_02(self):
    print("---用例b执行---")

  def test_03(self):
    print("---用例c执行---")

输出结果:

test_fixture2.py ss---用例c执行---

2、@pytest.mark.skipif(condition...) -- 若满足condition,则跳过测试函数

传入condition参数为判断条件,可以选择传入非必须参数reason;如果多个标签一起使用,满足其中一个跳过条件则会跳过该测试函数。

import pytest
def test_01():
  print("---用例a执行---")
class TestCase():
  #当多个@pytest.mark.skipif()标签时,若满足一个,则跳过测试函数
  @pytest.mark.skipif(condition='a' >= 'b', reason="no reason")
  @pytest.mark.skipif(condition='a' <= 'b', reason="no reason")
  def test_02(self):
    print("---用例b执行---")

  def test_03(self):
    print("---用例c执行---")

输出结果:

test_fixture2.py ---用例a执行---
.s---用例c执行---

3、自定义@pytest.mark.skip()标签

myskip = pytest.mark.skip() 或 myskip = pytest.mark.skipif(condition=...)

装饰时用该变量代替标签即可:@myskip

import pytest
# myskip = pytest.mark.skip()
myskip = pytest.mark.skipif(condition=2>1, reason="no reason")

@myskip
def test_01():
  print("---用例a执行---")

class TestCase():

  @myskip
  def test_02(self):
    print("---用例b执行---")

  def test_03(self):
    print("---用例c执行---")

输出结果:

test_fixture2.py ss---用例c执行---

4、通过pytest.skip()方法跳过测试函数

import pytest

def test_01():
  pytest.skip(msg="no reason")
  print("---用例a执行---")

class TestCase():

  def test_02(self):
    pytest.skip()
    print("---用例b执行---")

  def test_03(self):
    print("---用例c执行---")

输出结果:

test_fixture2.py ss---用例c执行--

5、跳过测试类

跳过测试类其实和跳过测试方法一样,使用@pytest.mark.skip()和@pytest.mark.skipif()两个标签,用他们装饰测试类就好啦。

import pytest
myskip = pytest.mark.skip(reason="no reason")
def test_01():
  print("---用例a执行---")
@myskip
class TestCase():
  def test_02(self):
    print("---用例b执行---")
  def test_03(self):
    print("---用例c执行---")

输出结果:

test_fixture2.py ---用例a执行---

6、跳过模块

使用pytestmark(不可更改变量名)变量,让他等于标签即可。

import pytest

pytestmark = pytest.mark.skip(condition=2>1, reason='no reason')

def test_01():
  print("---用例a执行---")

class TestCase():

  def test_02(self):
    print("---用例b执行---")

  def test_03(self):
    print("---用例c执行---")

输出结果:

test_fixture2.py sss

7、pycharm中运行多个测试文件

依次将要运行的文件名写在后面即可,用逗号隔开,无需链表元组等形式。

if __name__ == "__main__":
  pytest.main(['-s', 'test_fixture1.py', 'test_fixture2.py'])

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python修改注册表终止360进程实例
Oct 13 Python
python中管道用法入门实例
Jun 04 Python
Python简单读取json文件功能示例
Nov 30 Python
浅谈关于Python3中venv虚拟环境
Aug 01 Python
详解Python传入参数的几种方法
May 16 Python
将python文件打包成EXE应用程序的方法
May 22 Python
python实现递归查找某个路径下所有文件中的中文字符
Aug 31 Python
pygame库实现俄罗斯方块小游戏
Oct 29 Python
python3 使用openpyxl将mysql数据写入xlsx的操作
May 15 Python
keras实现多种分类网络的方式
Jun 11 Python
Python urllib3软件包的使用说明
Nov 18 Python
Python绘制散乱的点构成的图的方法
Apr 21 Python
matplotlib基础绘图命令之bar的使用方法
Aug 13 #Python
Python logging模块原理解析及应用
Aug 13 #Python
matplotlib基础绘图命令之imshow的使用
Aug 13 #Python
使用jupyter notebook运行python和R的步骤
Aug 13 #Python
matplotlib基础绘图命令之errorbar的使用
Aug 13 #Python
Python如何读写CSV文件
Aug 13 #Python
区分python中的进程与线程
Aug 13 #Python
You might like
提高PHP性能的编码技巧以及性能优化详细解析
2013/08/24 PHP
PHP+javascript制作带提示的验证码源码分享
2014/05/28 PHP
php抽象类用法实例分析
2015/07/07 PHP
PHP实现的常规正则验证helper公共类完整实例
2017/04/27 PHP
详解PHP处理字符串类似indexof的方法函数
2017/06/11 PHP
PHP的mysqli_sqlstate()函数讲解
2019/01/23 PHP
php基于 swoole 实现的异步处理任务功能示例
2019/08/13 PHP
解决jquery submit()提交表单提示:f[s] is not a function
2013/01/23 Javascript
js与jQuery 获取父窗、子窗的iframe
2013/12/20 Javascript
jQuery中replaceWith()方法用法实例
2014/12/25 Javascript
14个有用的Jquery技巧分享
2015/01/08 Javascript
JavaScript驾驭网页-获取网页元素
2016/03/24 Javascript
好好了解一下Cookie(强烈推荐)
2016/06/14 Javascript
jquery checkbox无法用attr()二次勾选问题的解决方法
2016/07/22 Javascript
Jq通过td获取同行其它列td的方法
2016/10/05 Javascript
Javascript基于jQuery UI实现选中区域拖拽效果
2016/11/25 Javascript
JS实现新建文件夹功能
2017/06/17 Javascript
ES6学习教程之模板字符串详解
2017/10/09 Javascript
vue中利用Promise封装jsonp并调取数据
2019/06/18 Javascript
windows系统中python使用rar命令压缩多个文件夹示例
2014/05/06 Python
Python爬取读者并制作成PDF
2015/03/10 Python
Python聊天室实例程序分享
2016/01/05 Python
selenium+python自动化测试之使用webdriver操作浏览器的方法
2019/01/23 Python
python实现二级登陆菜单及安装过程
2019/06/21 Python
使用Python实现文字转语音并生成wav文件的例子
2019/08/08 Python
python数据预处理 :数据共线性处理详解
2020/02/24 Python
pycharm工具连接mysql数据库失败问题
2020/04/01 Python
keras 多任务多loss实例
2020/06/22 Python
在Pytorch中使用Mask R-CNN进行实例分割操作
2020/06/24 Python
实例讲解Python 迭代器与生成器
2020/07/08 Python
Canvas 像素处理之改变透明度的实现代码
2019/01/08 HTML / CSS
世界最大域名注册商:GoDaddy
2016/07/24 全球购物
阿拉伯世界最大的电子卖场:Souq埃及
2016/08/01 全球购物
信息总监管理职责范本
2014/03/08 职场文书
初中生旷课检讨书范文
2014/10/06 职场文书
如何用JavaScipt测网速
2021/05/09 Javascript