iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Pytest中skip和skipif的使用方法是什么
  • 680
分享到

Pytest中skip和skipif的使用方法是什么

2023-06-20 12:06:43 680人浏览 独家记忆
摘要

本篇内容主要讲解“Pytest中skip和skipif的使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Pytest中skip和skipif的使用方法是什么”吧!skip的用法使用示

本篇内容主要讲解“Pytest中skip和skipif的使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Pytest中skip和skipif的使用方法是什么”吧!

skip的用法

使用示例:@pytest.mark.skip(reason="跳过的原因,会在执行结果中打印")

标记在测试函数中

举个?

import pytestdef test_1():    print("测试用例1")@pytest.mark.skip(reason="没写完,不执行此用例")def test_2():    print("测试用例2")

执行结果如下:

Pytest中skip和skipif的使用方法是什么

标记在测试类的测试用例中

举个?

import pytestclass TestCase(object):    def test_1(self):        print("测试用例1")    @pytest.mark.skip(reason="没写完,不执行此用例")    def test_2(self):        print("测试用例2")

执行结果如下

Pytest中skip和skipif的使用方法是什么

标记在测试类方法上

举个?

import pytest@pytest.mark.skip(reason="没写完,不执行此用例")class TestCase1(object):    def test_1(self):        print("测试用例1")    def test_2(self):        print("测试用例2")class TestCase2(object):    def test_3(self):        print("测试用例3")    def test_4(self):        print("测试用例4")

执行结果如下

Pytest中skip和skipif的使用方法是什么

总结

  • @pytest.mark.skip 可以加在函数上,类上,类方法上

  • 如果加在类上面,则类里面的所有测试用例都不会执行

在测试用例执行期间强制跳过

以一个for循环为例,执行到第3次的时候跳出

import pytestdef test_demo():    for i in range(50):        print(f"输出第【{i}】个数")        if i == 3:            pytest.skip("跑不动了,不再执行了")

执行结果如下

Pytest中skip和skipif的使用方法是什么

在模块级别跳过测试用例

语法:pytest.skip(msg="",allow_module_level=False)

allow_module_level=True时,可以设置在模块级别跳过整个模块

import pytestpytest.skip("跳过整个模块", allow_module_level=True)@pytest.fixture(autouse=True)def test_1():    print("执行测试用例1")def test_2():    print("执行测试用例2")

执行结果如下

Pytest中skip和skipif的使用方法是什么

有条件的跳过某些用例

语法:@pytest.mark.skipif(condition, reason="")

import sysimport pytest@pytest.mark.skipif(sys.platfORM == 'darwin', reason="does not run on MacOS")class TestSkipIf(object):    def test_demo(self):        print("不能在MacOS上运行")

注意:condition需要返回True才会跳过

执行结果如下:

Pytest中skip和skipif的使用方法是什么

跳过标记的使用

  • 可以将 pytest.mark.skip 和 pytest.mark.skipif 赋值给一个标记变量

  • 在不同模块之间共享这个标记变量

  • 若有多个模块的测试用例需要用到相同的 skip 或 skipif ,可以用一个单独的文件去管理这些通用标记,然后适用于整个测试用例集

举个?

import sysimport pytestskipmark = pytest.mark.skip(reason="不执行此用例")skipifmark = pytest.mark.skipif(sys.platform == 'darwin', reason="does not run on MacOS")@skipifmarkclass TestSkipIf(object):    def test_demo(self):        print("不能在MacOS上运行")@skipmarkdef test_1():    print("测试用例1")def test_2():    print("测试用例2")

执行结果如下

Pytest中skip和skipif的使用方法是什么

当缺少某些导入时跳过用例

语法:

pytest.importorskip( modname: str, minversion: Optional[str] = None, reason: Optional[str] = None )

参数:

  • modname: 需要被导入的模块名称,比如 selenium

  • minversion: 表示需要导入的最小的版本号,如果该版本不达标,将会打印出报错信息;

  • reason: 只有当模块没有被导入时,给定该参数将会显示出给定的消息内容

找不到对应module

举个?

import pytestrock = pytest.importorskip("rock")@rockdef test_1():    print("测试是否导入了rock模块")

运行结果

Pytest中skip和skipif的使用方法是什么

如果版本不达标

举个?

import pytestsel = pytest.importorskip("selenium", minversion="3.150")@seldef test_1():  print("测试是否导入了selenium模块")

运行结果

Pytest中skip和skipif的使用方法是什么

到此,相信大家对“Pytest中skip和skipif的使用方法是什么”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: Pytest中skip和skipif的使用方法是什么

本文链接: https://www.lsjlt.com/news/296761.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Pytest中skip和skipif的使用方法是什么
    本篇内容主要讲解“Pytest中skip和skipif的使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Pytest中skip和skipif的使用方法是什么”吧!skip的用法使用示...
    99+
    2023-06-20
  • Pytest中skip skipif跳过的使用方法
    这篇文章主要讲解了“Pytest中skip skipif跳过的使用方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Pytest中skip skipif跳过的使用方法”吧!前言pytest....
    99+
    2023-06-20
  • pytest中fixture的调用方式是什么
    这篇文章主要介绍了pytest中fixture的调用方式是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇pytest中fixture的调用方式是什么文章都会有所收获,下面我们一起来看看吧。pytest官方文...
    99+
    2023-06-30
  • mysql中skip-grant-tables的作用是什么
    在MySQL中,skip-grant-tables是一个配置选项,用于启动MySQL服务器时跳过授权表的验证,以便能够以特权用户的身...
    99+
    2024-04-09
    mysql
  • Python中Pytest和Unittest的区别是什么
    本文小编为大家详细介绍“Python中Pytest和Unittest的区别是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python中Pytest和Unittest的区别是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一...
    99+
    2023-07-05
  • Python使用pytest playwright的原因是什么
    这篇文章主要介绍了Python使用pytest playwright的原因是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python使用pytest playwright的原因是什么文章都会有所收获,下面...
    99+
    2023-07-05
  • Pytest如何使用mark的方法
    目录一、常见的内置markers二、查看所有markers三、注册自定义marks四、对未注册mark的限制一、常见的内置markers usefixtures - 为测试函数或者测...
    99+
    2024-04-02
  • Python中chinesecalendar安装和使用的方法是什么
    基础用法chinesecalendar的简介该库是判断某年某月某一天是不是工作日/节假日。支持将春节延长,时间跨度为2004年至2023年,其中包括2020年。由于次年的节假日安排,取决于国务院发布的日程。 所以本项目一般会在国务院更新以后...
    99+
    2023-05-19
    Python chinesecalendar
  • numpy中meshgrid和mgrid的区别和使用方法是什么
    这篇文章主要介绍了numpy中meshgrid和mgrid的区别和使用方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇numpy中meshgrid和mgrid的区别和使用方法是什么文章都会有所收获,下面...
    99+
    2023-07-05
  • Java中Term Vector的概念和使用方法是什么
    本篇内容主要讲解“Java中Term Vector的概念和使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java中Term Vector的概念和使用方法是什么”吧!term vec...
    99+
    2023-06-03
  • Angular中navigate()和navigateByUrl()使用方法的区别是什么
    这篇文章主要介绍“Angular中navigate()和navigateByUrl()使用方法的区别是什么”,在日常操作中,相信很多人在Angular中navigate()和navigateByUrl()使...
    99+
    2024-04-02
  • cocoapods安装和使用的方法是什么
    CocoaPods 是一个针对 Objective-C 和 Swift 项目的依赖管理器。它可以帮助开发者轻松地添加第三方库或框架到...
    99+
    2023-06-12
    cocoapods安装
  • Java中的clone()和Cloneable接口使用方法是什么
    本篇内容介绍了“Java中的clone()和Cloneable接口使用方法是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!clone()...
    99+
    2023-06-25
  • joomla安装和使用的方法是什么
    Joomla是一款免费的内容管理系统,以下是安装和使用Joomla的步骤:1. 下载Joomla:前往Joomla官网下载最新版本的...
    99+
    2023-06-03
    joomla安装
  • tensorflow部署和使用的方法是什么
    TensorFlow是一个开源的机器学习框架,可以用于构建、训练和部署深度学习模型。以下是TensorFlow部署和使用的一般步骤:...
    99+
    2024-03-12
    tensorflow
  • PHP中SQL修改语法和使用方法是什么
    本文小编为大家详细介绍“PHP中SQL修改语法和使用方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“PHP中SQL修改语法和使用方法是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、语法在PHP中...
    99+
    2023-07-05
  • mysql中的in使用方法是什么
    这篇文章主要讲解了“mysql中的in使用方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql中的in使用方法是什么”吧! ...
    99+
    2024-04-02
  • js中confirm的使用方法是什么
    在JavaScript中,confirm()是一个内置的对话框函数,用于显示一个确认对话框,并返回用户的选择结果。确认对话框通常用于...
    99+
    2023-10-23
    js
  • Java中JMH使用的方法是什么
    在Java中,JMH是一个用于进行Java微基准测试的工具。JMH是Java Microbenchmark Harness的缩写。它...
    99+
    2023-10-12
    Java JMH
  • c#中epplus的使用方法是什么
    EPPlus是一个用于处理Excel文件的开源库,可以在C#中使用。以下是一些EPPlus的使用方法: 创建一个新的Excel文件...
    99+
    2024-03-04
    c#
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作