pytest指定用例_测试用例怎么编写

pytest指定用例_测试用例怎么编写前言测试用例在设计的时候,我们一般要求不要有先后顺序,用例是可以打乱了执行的,这样才能达到测试的效果.有些同学在写用例的时候,用例写了先后顺序,有先后顺序后,后面还会有新的问题(如:上个用例返回

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言

测试用例在设计的时候,我们一般要求不要有先后顺序,用例是可以打乱了执行的,这样才能达到测试的效果.
有些同学在写用例的时候,用例写了先后顺序, 有先后顺序后,后面还会有新的问题(如:上个用例返回数据作为下个用例传参,等等一系列的问题。。。)
github 上有个pytest-ordering插件可以控制用例的执行顺序,github插件地址https://github.com/ftobia/pytest-ordering
 

安装依赖包

pip3 install pytest-ordering

 

小例子

先看pytest默认的执行顺序,是按 test_ording.py 文件写的用例先后顺序执行的

import pytest


def test_1():
    print("用例1")
    assert True


def test_2():
    print("用例2")
    assert True


def test_3():
    print("用例3")
    assert True

运行结果

collecting ... collected 3 items

test_1.py::test_1 PASSED                                                 [ 33%]用例1

test_1.py::test_2 PASSED                                                 [ 66%]用例2

test_1.py::test_3 PASSED                                                 [100%]用例3


============================== 3 passed in 0.02s ===============================

 

使用 pytest-ordering 插件后改变测试用例顺序

import pytest


@pytest.mark.run(order=3)
def test_1():
    print("用例1")
    assert True


@pytest.mark.run(order=1)
def test_2():
    print("用例2")
    assert True


@pytest.mark.run(order=2)
def test_3():
    print("用例3")
    assert True

运行结果

collecting ... collected 3 items

test_1.py::test_2 PASSED                                                 [ 33%]用例2

test_1.py::test_3 PASSED                                                 [ 66%]用例3

test_1.py::test_1 PASSED                                                 [100%]用例1


============================== 3 passed in 0.02s ===============================

这样就是按指定的顺序执行的用例

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/165149.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 上帝掷骰子吗–量子物理史话

    上帝掷骰子吗–量子物理史话  上帝掷骰子吗–量子物理史话    第一章黄金时代    一    我们的故事要从1887年的德国开始。位于莱茵河边的卡尔斯鲁厄是一座风景秀丽的城市,在它的城中心,矗立着著名的18世纪的宫殿。郁郁葱葱的森林和温暖的气候也使得这座小城成为了欧洲的一个旅游名胜。然而这些怡人的景色似乎没有分散海因里希?鲁道夫?赫兹(HeinrichRudolfHertz)的注意力:现在他正

  • window 下 win10 jdk安装与环境变量的配置(超级详细)

    window 下 win10 jdk安装与环境变量的配置(超级详细)1、jdk的下载1.1官网下载地址https://www.oracle.com/java/technologies/javase-downloads.html这里以为下载需要登录所以我准备了百度网盘1.2百度网盘下载链接:https://pan.baidu.com/s/1uBm0XqBtbdafWgn_YUSWLA提取码:2mqh2、新建文件夹2.1、新建Java文件夹我这里选择的是安装的文件夹我在H盘里面新建了个java文件夹,这里盘符可以改的CDE啥都无所谓

  • intelj 2021 激活码(注册激活)[通俗易懂]

    (intelj 2021 激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.cn/100143.htmlMLZPB5EL5Q-eyJsaWN…

  • 工厂模式 Factory Method[通俗易懂]

    工厂模式 Factory Method[通俗易懂]工厂模式 Factory Method动机模式定义实例结构图要点总结笔记动机在软件系统中,经常面临着创建对象的工作,由于需求的变换,需要创建的对象的具体类型经常变换。如何应对这种变换?如何绕过常规的对象创建方法(new),提供一种”封装机制“来避免客户程序和这种”具体对象创建工作“的紧耦合模式定义定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使得一个类的实例化延迟(目的:解耦,手段:虚函数)到子类实例朴素class ISplitter{public:

  • python中for循环的用法1+2+3…+50的和_python结束for循环

    python中for循环的用法1+2+3…+50的和_python结束for循环1.一般格式range(stop)#0~stop-1range(start,stop)#start~stop-1range(start,stop,step)#start~stop-1,step表示步长注:Python中break,continue的用法与C中一致2.在enumerate中的用法enumerate()(单词意思是枚举的意思)是python中的内置函数,enumera

  • 设置ASP页的Session过期时间的问题

    设置ASP页的Session过期时间的问题保持Session的方法:有人说设session.timeout=-1,或小于0的数。这种方法肯定是不行的,session计算时间以分钟为单位,必须是大于等于1的整数。又有人说设session.timeout=99999。这种同样不行,session有最大时间限制。我经过测试发现最大值为24小时,也就是说你最大可以session.timeout=1440,1441都是不可以有,呵呵。本人测试环境:

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号