当前位置: 首页 > news >正文

pytest入门一:用例的执行范围

从一个或多个目录开始查找,可以在命令行指定文件名或目录名。如果未指定,则使用当前目录。

  • 测试文件以 test_ 开头或以 _test 结尾

  • 测试类以 Test 开头 ,并且不能带有 init 方法

  • 测试函数以 test_ 开头

  • 断言使用基本的 assert 即可

  • 所有的包 pakage 必须要有__init__.py 文件

# test_2.py
import sysimport pytestdef add(x,y):return x + y@pytest.mark.add
def test_add():assert add(1,2) == 3assert add(2,3) == 5assert add(10,2) == 12def is_win32():return True if sys.platform == 'win32' else Falseclass TestDemo:def test_demo(self):x = "hello world"print(f"{x} python")assert 'h' in x@pytest.mark.skipif(sys.platform == 'win32',reason='win32跳过用例')def test_demo3(self):x = "hello world"print(f"{x} python")assert 'h' in xonly_win32 = pytest.mark.skipif(is_win32(),reason='win32跳过用例')@only_win32def test_demo4(self):x = "hello world"print(f"{x} python")assert 'h' in x@pytest.mark.skip("变更")def test_demo2(self):x = 'hello'assert hasattr(x,"check")@pytest.mark.xfail(reason="bug待修复")def test_demo5(self):x = 'hello'assert hasattr(x, "check")if __name__ == "__main__":pytest.main(['-v', '-s'])

1)执行全部

if name == "__main__": pytest.main(['-v', '-s'])

2)执行某个文件 

if name == "__main__":
    pytest.main(['-v', '-s','test_2.py'])

 3)执行某个类

if name == "__main__":
    pytest.main(['-v', '-s','test_2.py::TestDemo'])

4) 执行某个方法

if name == "__main__":
    pytest.main(['-v', '-s','test_2.py::TestDemo::test_demo'])

5) mark 打标执行  pytest.mark.add

6) skip忽略执行  @pytest.mark.skip("变更")

7) 条件忽略skipif    @pytest.mark.skipif(sys.platform == 'win32',reason='win32跳过用例')

8)xfail:预期失败 @pytest.mark.xfail

真失败会显示xfailed,成功会显示xpassed,应用场景:已知bug标注,后续验证修复

相关文章:

pytest入门一:用例的执行范围

从一个或多个目录开始查找,可以在命令行指定文件名或目录名。如果未指定,则使用当前目录。 测试文件以 test_ 开头或以 _test 结尾 测试类以 Test 开头 ,并且不能带有 init 方法 测试函数以 test_ 开头 断言使用基本的 assert 即可 所有的…...

22. 正则表达式

一、概述 正则表达式(regular expression)又称 规则表达式,是一种文本模式(pattern)。正则表达式使用一个字符串来描述、匹配具有相同规格的字符串,通常被用来检索、替换那些符合某个模式(规则&…...

Flink Python作业快速入门

Flink Python快速入门_实时计算 Flink版(Flink)-阿里云帮助中心 import argparse # 用于处理命令行参数和选项,使程序能够接收用户通过命令行传递的参数 import logging import sysfrom pyflink.common import WatermarkStrategy, Encoder, Types from pyflink.data…...

自定义函数库

求两点距离 double dis(double x1, double y1, double x2, double y2){return sqrt(pow(x2-x1, 2)pow(y2-y1, 2)); }判断闰年 bool isLeapYear(int year){return year%40 && year%100!0 || year%4000; }判断素数 bool isPrime(int num){if(num<2) return false;f…...

FreeRTOS例程2-任务挂起恢复与使用中断遇到的坑!

任务挂起简单点理解就是现在不需要执行这个任务&#xff0c;让它先暂停&#xff0c;就是挂起。恢复就是从刚才挂起的状态下继续运行。 API函数 任务挂起vTaskSuspend() 函数原型(tasks.c中): void vTaskSuspend( TaskHandle_t xTaskToSuspend ) 1. 参数&#xff1a; xTaskTo…...

L23.【LeetCode笔记】验证回文串(剖析几种解法)

目录 1.题目 2.自解 提交结果 反思 大小写之间的位运算 提交结果 3.代码优化 提交结果 ​编辑 4.LeetCode网友提供的解法 1.题目 https://leetcode.cn/problems/XltzEq/description/ 给定一个字符串 s &#xff0c;验证 s 是否是 回文串 &#xff0c;只考虑字母和数…...

FPGA 17 ,FPGA 与 SR-IOV虚拟化技术,高性能计算与虚拟化技术的结合(FPGA 与 SR-IOV 和 PCI,高性能计算与虚拟化的完美融合)

目录 前言 一. SR-IOV 的起源与发展 1. SR-IOV 的起源与时间线 2. SR-IOV 的诞生原因 3. SR-IOV 的详细介绍 二. SR-IOV 和 PCI 之间的关系 三. PCI 的起源与演进 1. PCI 的起源与时间线 2. PCI 的关键特性 四. FPGA 的独特魅力 1. FPGA 的定义与特性 2. FPGA 的内…...

解决navicat 导出excel数字为科学计数法问题

一、原因分析 用程序导出的csv文件&#xff0c;当字段中有比较长的数字字段存在时&#xff0c;在用excel软件查看csv文件时就会变成科学技术法的表现形式。 其实这个问题跟用什么语言导出csv文件没有关系。Excel显示数字时&#xff0c;如果数字大于12位&#xff0c;它会自动转化…...

[Unity] AppLovin Max接入Native 广告 Android篇

把下载下来的maxnativelibrary-release-文件放在Plugins/Android下 将这一行加入到mainTemplate.gradle文件中 implementation androidx.constraintlayout:constraintlayout:2.1.4添加下面的两个脚本 using System; using System.Collections; using System.Collections.Gener…...

Source Insight 4.0的安装

一、安装与破解 1、下载Source Insight 4.0安装包 https://pan.baidu.com/s/1t0u1RM19am0lyzhlNTqK9Q?pwdnvmk 2、下载程序破解补丁包 https://pan.baidu.com/s/1irvH-Kfwjf4zCCtWJByqJQ 其中包含文件si4.pediy.lic 和 sourceinsight4.exe。 3、安装下载的Source Insight …...

远程调试软件对比与使用推荐

远程调试软件对比与使用推荐 远程调试是现代软件开发中不可或缺的一部分&#xff0c;尤其是在处理分布式系统、云端服务或远程服务器上的问题时。以下是对几种常见远程调试工具的详细对比和推荐使用场景。 1. GDB (GNU Debugger) 特点 开源&#xff1a;完全免费且开源&…...

鸿蒙项目云捐助第二讲鸿蒙图文互动基本程序实现

鸿蒙项目云捐助第二讲鸿蒙图文互动基本程序实现 结合第一讲建立的“Hello World”程序&#xff0c;得到如下图所示的界面。 这里的“Hello World”是通过“Priview”显示出来的。在这个界面中进行开发的前奏曲&#xff0c;可以通过点击更换图片的案例来体会一下鸿蒙Next的开发…...

求解球面的一组正交标架

目录 求解球面的一组正交标架 求解球面的一组正交标架 球面 r ( u , v ) ( a cos ⁡ u cos ⁡ v , a cos ⁡ u sin ⁡ v , a sin ⁡ u ) \mathbf{r}(u,v)\left(a\cos u\cos v,a\cos u\sin v,a\sin u\right) r(u,v)(acosucosv,acosusinv,asinu), 求得 r u ( − a sin ⁡ u c…...

php.ini 文件上传/执行时间/部分配置新手教程

1、上传文件大小配置 一般需要同时配置“upload_max_filesize”、“post_max_size”&#xff0c;配置格式如下&#xff1a; file_uploads On ;是否允许HTTP文件上传 upload_max_filesize 2M ;设置单个文件上传的最大尺寸 post_max_size 8M ;设置 POST 请求体的最大尺寸&am…...

【Leetcode Top 100】102. 二叉树的层序遍历

问题背景 给你二叉树的根节点 r o o t root root&#xff0c;返回其节点值的 层序遍历 。 &#xff08;即逐层地&#xff0c;从左到右访问所有节点&#xff09;。 数据约束 树中节点数目在范围 [ 0 , 2000 ] [0, 2000] [0,2000] 内 − 1000 ≤ N o d e . v a l ≤ 1000 -1…...

【C++笔记】AVL树

前言 各位读者朋友们大家好&#xff0c;上期我们讲解了map和set这两大容器的使用&#xff0c;这一期我们讲解最早的平衡二叉搜索树——AVL树。 目录 前言一. AVL树的概念二. AVL树的实现2.1 AVL树的结构2.2 AVL树的插入2.2.1 AVL树插入一个值的大致过程2.2.2 平衡因子的更新2…...

【竞技宝】LOL:JDG官宣yagao离队

北京时间2024年12月13日,在英雄联盟S14全球总决赛结束之后,各大赛区都已经进入了休赛期,目前休赛期也快进入尾声,LPL大部分队伍都开始陆续官宣转会期的动向,其中JDG就在近期正式官宣中单选手yagao离队,而后者大概率将直接选择退役。 近日,JDG战队在官方微博上连续发布阵容变动消…...

双目摄像头标定方法

打开matlab 找到这个标定 将双目左右目拍的图像上传&#xff08;左右目最好不少于20张&#xff09; 等待即可 此时已经完成标定&#xff0c;左下角为反投影误差&#xff0c;右边为外参可视化 把这些误差大的删除即可。 点击导出 此时回到主页面&#xff0c;即可看到成功导出 Ca…...

相差不超过k的最多数,最长公共子序列(一),排序子序列,体操队形,青蛙过河

相差不超过k的最多数 链接:相差不超过k的最多数 来源&#xff1a;牛客网 题目描述&#xff1a; 给定一个数组&#xff0c;选择一些数&#xff0c;要求选择的数中任意两数差的绝对值不超过 &#x1d458; 。问最多能选择多少个数&#xff1f; 输入描述: 第一行输入两个正整…...

【自然语言处理与大模型】使用llama.cpp将HF格式大模型转换为GGUF格式

llama.cpp的主要目标是在本地和云端的各种硬件上以最小的设置和最先进的性能实现LLM推理。是一个专为大型语言模型&#xff08;LLM&#xff09;设计的高性能推理框架&#xff0c;完全使用C和C编写&#xff0c;没有外部依赖&#xff0c;这使得它可以很容易地被移植到不同的操作系…...

别再乱用ref和reactive了!Vue3响应式API实战避坑指南(附代码对比)

Vue3响应式API深度解析&#xff1a;从原理到实战的避坑指南 在Vue3的日常开发中&#xff0c;ref和reactive这两个响应式API的使用频率极高&#xff0c;但许多开发者在使用过程中常常陷入各种"陷阱"。本文将深入剖析它们的底层机制&#xff0c;并通过实际案例展示如何…...

Web开发方向之人工智能核心技术线

① Python 基础与科学计算库Python 基础语法是开启人工智能学习的必备。深入学习 Python 的科学计算库是必不可少的一步。NumPy&#xff1a;是科学计算的基石&#xff0c;提供了高效的多维数组对象以及丰富的数学函数。通过 NumPy&#xff0c;我们能够快速进行矩阵运算、向量操…...

C语言完美演绎7-7

/* 范例&#xff1a;7-7 */#include <stdio.h>int main(){int a;int b;int *ptr; /* 定义指针变量&#xff0c;这里的星号间接运算符 (*)并不作“依址操作”动作 */a 5; b a; ptr &b; /* 变量b的地址&#xff0c;赋值给指针变量ptr *//* 下面是把a、b、ptr的内…...

从SST到MLD:手把手教你用xarray处理CMEMS海洋数据,生成月平均图与全局年平均场

从SST到MLD&#xff1a;xarray实战CMEMS海洋数据处理与可视化全流程 海洋数据科学正经历一场由工具革新驱动的效率革命。在哥白尼海洋环境监测服务&#xff08;CMEMS&#xff09;等开放数据平台的推动下&#xff0c;获取全球海洋参数已不再是瓶颈&#xff0c;真正的挑战转向如何…...

nixos-anywhere磁盘加密指南:如何实现全盘加密和安全密钥管理

nixos-anywhere磁盘加密指南&#xff1a;如何实现全盘加密和安全密钥管理 【免费下载链接】nixos-anywhere Install NixOS everywhere via SSH [maintainersMic92 Lassulus phaer Enzime a-kenji] 项目地址: https://gitcode.com/gh_mirrors/ni/nixos-anywhere nixos-an…...

数据本体论 vs 数仓实体建模?

一、定义与起源 维度 数据本体论 (Data Ontology) 数仓实体建模 定义 哲学“存在论”在计算机领域的应用&#xff0c;强调语义统一 数据库ER建模方法&#xff0c;强调数据结构化与存储优化 核心思想 以“概念/类”为中心&#xff0c;描述事物“是什么”及“为何关联” 以“…...

Go语言命名规则实战:从变量到包名的完整避坑指南

Go语言命名规则实战&#xff1a;从变量到包名的完整避坑指南 当你第一次接触Go语言时&#xff0c;可能会被它简洁的语法所吸引&#xff0c;但很快就会发现这门语言对命名有着近乎苛刻的要求。我至今还记得刚学Go时&#xff0c;因为一个包名的大小写问题调试了整个下午的经历。本…...

Qwen3.5-2B本地知识库问答系统:基于CSDN技术文章的精准检索与摘要

Qwen3.5-2B本地知识库问答系统&#xff1a;基于CSDN技术文章的精准检索与摘要 1. 技术问答的痛点与解决方案 技术开发者在日常工作中经常遇到这样的场景&#xff1a;遇到一个具体的技术问题&#xff0c;需要快速找到相关解决方案。传统的做法是在搜索引擎中输入关键词&#x…...

springMVC请求处理全过程

这张图展示的是 Spring MVC 最经典的工作流。既然你之前问过 DispatcherServlet&#xff0c;那我们就把这张图里的角色和具体的组件对号入座&#xff0c;带你走一遍这个“请求大冒险”。 在 Spring MVC 中&#xff0c;图里的 Front Controller 对应的真实身份就是 DispatcherSe…...

Phi-4-mini-reasoning模型效果展示:智能解读操作系统核心概念

Phi-4-mini-reasoning模型效果展示&#xff1a;智能解读操作系统核心概念 1. 模型能力概览 Phi-4-mini-reasoning是一款专注于技术概念解析的轻量级模型&#xff0c;特别擅长用通俗易懂的方式拆解复杂系统原理。在操作系统这类抽象概念的解释上&#xff0c;它能将教科书式的定…...