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 ===============================

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

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/165662.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 激光SLAM算法学习(三)——3D激光SLAM

    激光SLAM算法学习(三)——3D激光SLAM3D激光SLAM1、3D激光SLAM的介绍3D激光SLAM的输入:IMU数据3D激光雷达数据里程计数据3D激光SLAM的输出:3D点云地图机器人的轨迹orPoseGraph2、3D激光SLAM的发展3D激光SLAM的帧间匹配方法——点云配准算法Point-to-PlaneICPFeature-basedMethod3D激光SLAM的回环检测方法Scan-to…

    2022年8月23日
    2
  • 基于MAX31865的温度控制系统

    基于MAX31865的温度控制系统系统介绍这是之前写的关于MAX31865测温相关的文章,本次在此基础上又实现了一些新功能。总结——STM32F103C8T6通过MAX31865读取PT100电阻值STM32控制max31865,利用pt100测温度,利用0.96OLED液晶显示屏显示温度值。温度过高控制风扇开启,温度过低控制加热膜加热。后续需要增加温度过高或过低蜂鸣器响且液晶有提示报警类型。系统组成STM32F103C8T6小系统板单片机核心板STM32开发板学习板实验板(升级版)MAX31865RTD铂电阻温度检测器

    2022年6月16日
    31
  • CAS单点登录-简介(一)「建议收藏」

    CAS单点登录-简介(一)「建议收藏」CAS单点登录-简介(一)CAS-5.1.3什么是CAS?什么是单点登录?带大家一起搭建sso、cas-management、springbootadmin、springcloudconfig

    2022年6月7日
    51
  • webpack es6转es5原理_webpack和vue cli区别

    webpack es6转es5原理_webpack和vue cli区别首先下载babel-loadernpminstall–save-devbabel-loader@7babel-corebabel-preset-es2015要在最外部输入指令不然会报错然后在webpack.config.js中写相关代码{test:/\.js$/,exclude:/(node_modules|bower_components)/,use:{

    2022年9月25日
    0
  • 记笔记最好用的超高颜值软件之一!Typora 你值得拥有!「建议收藏」

    记笔记最好用的超高颜值软件之一!Typora 你值得拥有!「建议收藏」之前一直在寻找一款比较好用的记笔记软件,OneNote很强大,但是有时总是出现同步失败的问题,而且对代码类型的笔记不太友好。之后意外了解到markdown(一种富文本的记笔记形式),类似CSDN,于是就了解到Typora这款颜值超高还免费的软件!它支持多种好看的主题,支持代码高亮,文字注释…

    2022年5月12日
    42
  • ID卡复制教程(使用T5577卡复制4100卡)

    ID卡复制教程(使用T5577卡复制4100卡)1ID卡的常见类型与区别国内常见的普通ID卡多为EM4100或EM4102卡,其特点是不可修改ID号。为了复制普通ID卡,通常采用T5577或EM4305卡(俗称ID白卡),其特点是内部EEPROM可读可写,修改卡内EEPROM的内容即可修改卡片对外的ID号,达到复制普通ID卡的目的。本文以T5577卡复制普通EM4100卡。读者需具备基本的电子DIY能力。多说一句,ID…

    2022年6月10日
    363

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

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