pytest 参数介绍
命令行参数 | 描述 | 常见使用案例 |
---|---|---|
-v / --verbose | 显示每个测试用例的详细信息,包括测试名称和状态 | pytest -v |
-s / --capture=no | 禁用输出捕获,允许 print() 输出显示 | pytest -s |
-q / --quiet | 安静模式,减少输出,仅显示每个测试的通过/失败结果 | pytest -q |
-k <expression> | 根据指定的表达式运行匹配的测试,支持匹配测试函数名称或类名 | pytest -k "test_add" |
-m <markexpr> | 运行具有指定标记的测试,用于过滤测试,如 smoke 标记的测试 | pytest -m smoke |
--maxfail=<num> | 设置最大失败次数,超过次数则停止执行测试 | pytest --maxfail=3 |
--disable-warnings | 禁用警告信息输出 | pytest --disable-warnings |
--tb=<style> | 控制错误回溯的输出格式,选项包括 short 、long 、no 、line | pytest --tb=short |
--capture=<mode> | 控制标准输出捕获方式,no 禁用,fd 捕获标准输出和错误,sys 捕获标准输出等 | pytest --capture=no |
-p | 加载插件。用于在命令行中加载指定插件,如 -p no:warnings 禁用警告插件 | pytest -p no:warnings |
--runxfail | 标记预期会失败的测试。如果测试失败不会被计入总失败次数,如果通过则为错误 | pytest --runxfail |
--junitxml=<file> | 生成 JUnit XML 格式的测试报告,用于 CI/CD 集成 | pytest --junitxml=report.xml |
--html=<file> | 生成 HTML 格式的测试报告(需要安装 pytest-html 插件) | pytest --html=report.html |
--cov=<module> | 生成代码覆盖率报告(需要安装 pytest-cov 插件) | pytest --cov=my_module |
--ignore=<path> | 忽略指定的测试文件或目录。可以用于跳过不需要执行的测试 | pytest --ignore=tests/test_ignored.py |
--setup-show | 显示每个测试的 setup 和 teardown 步骤 | pytest --setup-show |
--trace | 追踪每个测试的执行顺序(适用于有复杂依赖关系的测试) | pytest --trace |
--fixtures | 列出当前项目中所有的 fixtures | pytest --fixtures |
-h | 显示 pytest 的帮助信息,列出所有可用的命令行参数 | pytest -h |
常见使用案例说明
-
显示详细信息:
-v
/--verbose
- 用途:在执行测试时显示详细的测试结果,包括每个测试的名称、结果(通过或失败)。
- 使用示例:
pytest -v
- 输出示例:
test_add.py::test_addition PASSED test_add.py::test_subtraction FAILED
-
禁用输出捕获:
-s
/--capture=no
- 用途:禁用 pytest 的输出捕获功能,确保
print()
输出会显示在控制台中。 - 使用示例:
pytest -s
- 输出示例:
Test started <stdout>: Some debug information
- 用途:禁用 pytest 的输出捕获功能,确保
-
按测试名称过滤:
-k
- 用途:只运行名称匹配指定表达式的测试函数,可以基于函数名进行灵活的过滤。
- 使用示例:
pytest -k "add"
- 说明: 运行名称中包含
add
的所有测试,如test_add
或test_addition
。
-
运行特定标记的测试:
-m
- 用途:运行所有带有特定标记的测试,如
smoke
、regression
等。 - 使用示例:
pytest -m "smoke"
- 说明: 只运行带有
@pytest.mark.smoke
标记的测试。
- 用途:运行所有带有特定标记的测试,如
-
最大失败次数:
--maxfail
- 用途:限制测试失败的最大次数,如果失败次数超过指定值,则停止测试执行。
- 使用示例:
pytest --maxfail=2
- 说明: 运行最多两个失败的测试,超过两次失败则停止执行。
-
禁用警告信息:
--disable-warnings
- 用途:禁用所有测试中的警告信息,保持输出简洁。
- 使用示例:
pytest --disable-warnings
- 输出示例:
Test passed
-
生成 HTML 报告:
--html
- 用途:生成 HTML 格式的测试报告,便于查看和分享测试结果。
- 使用示例:
pytest --html=report.html
- 说明: 生成一个
report.html
的测试报告。
-
跳过特定测试:
--ignore
- 用途:跳过指定的测试文件或目录,常用于忽略不需要执行的测试。
- 使用示例:
pytest --ignore=tests/test_ignored.py
-
生成 JUnit XML 报告:
--junitxml
- 用途:生成 JUnit XML 格式的报告,通常用于 CI/CD 集成。
- 使用示例:
pytest --junitxml=result.xml
-
指定测试覆盖率:
--cov
- 用途:生成代码覆盖率报告,用于分析测试覆盖了代码的哪些部分。
- 使用示例:
pytest --cov=my_module
通过结合这些命令行参数,pytest
可以在实际测试过程中提供更多灵活的控制和更详细的输出报告。
相关文章:
pytest 参数介绍
命令行参数描述常见使用案例-v / --verbose显示每个测试用例的详细信息,包括测试名称和状态pytest -v-s / --captureno禁用输出捕获,允许 print() 输出显示pytest -s-q / --quiet安静模式,减少输出,仅显示每个测试的通过/失败结果…...

源代码编译安装X11及相关库、vim,配置vim(1)
一、目录结构 如下。 所有X11及相关库装到mybuild,源代码下载到src下,解压,进入,编译安装。编译时指定--prefix到相同的目录,即上图中mybuild。 ./configure --prefixpwd/../../mybuild [CFLAGS"-I/path/to/X11…...
Node.js JXcore 打包教程
Node.js JXcore 打包教程 介绍 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,它允许开发者使用 JavaScript 编写服务器端和网络应用程序。JXcore 是一个流行的 Node.js 发行版,它支持将 Node.js 应用程序打包成单一的可执行文件,使得部署和分发变得更加容易…...
windows 下基于docker 部署 guacamole
背景 Apache Guacamole 是一种无客户端或插件的远程桌面网关。它支持多个标准协议,如 VNC、RDP 和 SSH等。记录下部署过程。 步骤 1, 安装docker desktop choco install docker-desktop -y 注: 若windows 11还未安装wsl,则需要…...
『SQLite』子查询可以这样用
摘要:本节主要讲子查询的使用,可以在查询、更新、修改、删除等操作中使用。 什么是子查询? 子查询是一种在 SELECT-SQL 语言中嵌套查询下层的程序模块。当一个查询是另一个查询的条件时,称之为子查询(Sub Query&#…...

夯实前端基础之HTML篇
知识点概览 HTML部分 1. DOM和BOM有什么区别? DOM(Document Object Model) 当网页被加载时,浏览器会创建页面的对象文档模型,HTML DOM 模型被结构化为对象树 用途: 主要用于网页内容的动态修改和交互&…...

VVenC 编码器源码结构与接口函数介绍
VVenC VVenC(Fraunhofer Versatile Video Encoder)是由德国弗劳恩霍夫海因里希研究所(Fraunhofer Heinrich Hertz Institute, HHI)开发的一个开源的高效视频编码器。它实现了最新的视频编码标准——Versatile Video Coding (VVC)…...

【C++习题】20. 两个数组的交集
题目:349. 两个数组的交集 - 力扣(LeetCode) 链接🔗:349. 两个数组的交集 - 力扣(LeetCode) 题目: 代码: class Solution { public:// 函数功能:求两个数组…...
小R的蛋糕分享
小R的蛋糕分享 问题描述 小R手里有一个大小为 n 行 m 列的矩形蛋糕,每个小正方形区域都有一个代表美味度的整数。小R打算切割出一个正方形的小蛋糕给自己,而剩下的部分将给小S。她希望两人吃的部分的美味度之和尽量接近。 我们定义小R吃到的部分的美味度…...

基于Arduino的FPV头部追踪相机系统
构建FPV头部追踪相机:让你置身于遥控车辆之中! 在遥控车辆和模型飞行器的世界中,第一人称视角(FPV)体验一直是爱好者们追求的目标。通过FPV头部追踪相机,你可以像坐在车辆或飞行器内部一样,自由…...
使用 PyTorch 自定义数据集并划分训练、验证与测试集
使用 PyTorch 自定义数据集并划分训练、验证与测试集 在图像分类等任务中,通常需要将原始训练数据进一步划分为训练集和验证集,以便在训练过程中评估模型的性能。下面将详细介绍如何组织数据与注释文件、如何分割训练集和验证集,以及如何基于…...
VSCode 插件
VSCode 插件 1. GitHub Copilot - AI 代码助手 功能:根据上下文提供实时代码补全,支持自然语言转代码,提供符合现代编程规范的建议。进阶技巧: 使用快捷键 Alt ] 切换多个建议。写注释时,描述业务逻辑而不是具体实现…...
Windows使用AutoHotKey解决鼠标键连击现象(解决鼠标连击、单击变双击的故障)
注:罗技鼠标,使用久了之后会出现连击现象,如果刚好过保了,可以考虑使用软件方案解决连击现象: 以下是示例AutoHotKey脚本,实现了调用XButton1用于关闭窗口(以及WinW,XButton2也导向…...
Linux 环境(Ubuntu)部署 Hadoop 环境
前置准备 准备三台机器 cat /etc/hosts 192.168.1.7 hadoop-master 192.168.1.11 hadoop-slave01 192.168.1.12 hadoop-slave02Linux 环境 cat /etc/os-release PRETTY_NAME"Ubuntu 24.10" NAME"Ubuntu" VERSION_ID"24.10" VERSION"24.…...

如何在Windows 11 WSL2 Ubuntu 环境下安装和配置perf性能分析工具?
在Windows 11 WSL2 Ubuntu 环境下完整安装和配置perf性能分析工具 一、背景二、准备工作三、获取并编译Linux内核源码四、安装和配置perf五、测试perf六、总结 一、背景 由于WSL2使用的是微软定制的内核,并非标准的Ubuntu内核,因此直接使用apt安装linux…...

Docker运维高级容器技术知识点总结
1、虚拟机部署和容器化部署的区别是什么? 1、技术基础: <1>.虚拟化技术在物理硬件上创建虚拟机,每台虚拟机运行自己完整的操作系统、从而实现资源隔离。 <2>.容器化技术:将应用程序打包在容器内,在进程空间…...

react-quill 富文本组件编写和应用
index.tsx文件 import React, { useRef, useState } from react; import { Modal, Button } from antd; import RichEditor from ./RichEditor;const AnchorTouchHistory: React.FC () > {const editorRef useRef<any>(null);const [isModalVisible, setIsModalVis…...

LabVIEW轴承性能测试系统
本文介绍了基于LabVIEW的高效轴承性能测试系统的设计与开发。系统通过双端驱动技术实现高精度同步控制,针对轴承性能进行全面的测试与分析,以提高轴承的可靠性和寿命。 项目背景 随着工业自动化程度的提高,对轴承的性能要求越来越高。传统的…...

【《游戏编程模式》实战04】状态模式实现敌人AI
目录 1、状态模式 2、使用工具 3、状态模式适用范围 4、实现内容 5、代码及思路 Enemy.cs EnemyState.cs 6、unity里的设置 7、运行效果展示 1、状态模式 “允许一个对象在其内部状态改变时改变自身的行为。对象看起来好像是在修改自身类。” 就是一个对象能随着自己…...

借助免费GIS工具箱轻松实现las点云格式到3dtiles格式的转换
在当今数字化浪潮下,地理信息系统(GIS)技术日新月异,广泛渗透到城市规划、地质勘探、文化遗产保护等诸多领域。而 GISBox 作为一款功能强大且易用的 GIS 工具箱,以轻量级、免费使用、操作便捷等诸多优势,为…...
大模型高效提示词Prompt编写指南
大模型高效Prompt编写指南 一、引言二、核心原则1. 清晰性原则:明确指令与期望2. 具体性原则:提供详细上下文3. 结构化原则:组织信息的逻辑与层次4. 迭代优化原则:通过反馈改进Prompt5. 简洁性原则:避免冗余信息 三、文…...
libiec61850 mms协议异步模式
之前项目中使用到libiec61850库,都是服务端开发。这次新的需求要接收服务端的遥测数据,这就涉及到客户端开发了。 客户端开发没搞过啊,挑战不少,但是人不就是通过战胜困难才成长的嘛。通过查看libiec61850的客户端API发现…...

【Java开发日记】说一说 SpringBoot 中 CommandLineRunner
目录 1、CommandLineRunner SpringBoot中CommandLineRunner的作用 简单例子 多个类实现CommandLineRunner接口执行顺序的保证 通过实现Ordered接口实现控制执行顺序 通过Order注解实现控制执行顺序 Order 作用 2、ApplicationRunner 3、传递参数 4、源码跟踪 run()方…...

(LeetCode 每日一题)3170. 删除星号以后字典序最小的字符串(贪心+栈)
题目:3170. 删除星号以后字典序最小的字符串 思路:贪心栈,时间复杂度0(n)。 对于每一个‘ * ’,优先选最右边的最小字符,才会使最终得到的字符串最小。 用栈,来记录每个字符的位置下标。细节看注释。 C版本…...

VUE前端实现自动打包成压缩文件
VUE前端实现自动打包成压缩文件 背景思路实现打包代码实现 尾巴 背景 做前端开发的兄弟们都经历过每次开发完成之后发包需要进行打包,然后将打包文件压缩。每次打好包了都得手动压缩一遍,就有点繁琐。今天我们就使用一种命令行自动压缩的方法࿰…...

RT-Thread内核组成——内核移植
内核移植就是指将 RT-Thread 内核在不同的芯片架构、不同的板卡上运行起来,能够具备线程管理和调度,内存管理,线程间同步和通信、定时器管理等功能。移植可分为 CPU 架构移植和 BSP(Board support package,板级支持包&…...

如何使用Webhook触发器,在 ONLYOFFICE 协作空间构建智能工作流
在数字化办公中,ONLYOFFICE 协作空间作为一款功能强大的文档协作平台,提供了丰富的自动化功能。对于开发者而言,Webhook 触发器是实现业务流程自动化与系统集成的关键工具。本文将深入探讨如何在 ONLYOFFICE 协作空间中高效利用 Webhook&…...

升级:用vue canvas画一个能源监测设备和设备的关系监测图!
用vue canvas画一个能源电表和设备的监测图-CSDN博客 上一篇文章,我是用后端的数据来画出监测图。这次我觉的,用前端来控制数据,更爽。 本期实现功能: 1,得到监测设备和设备的数据,然后进行存库 2&…...
如何选择专业数据可视化开发工具?为您拆解捷码全功能和落地指南!
分享大纲: 1、捷码核心功能:4维能力支撑大屏开发 2、3步上手:可视化大屏开发操作路径 3、适配场景:8大行业已验证方案 在各行各业要求数字化转型时代,数据可视化大屏已成为众多企业数据驱动的核心工具。面对市场上繁杂…...

ruoyi-plus-could 负载均衡 通过 Gateway模块配置负载均衡
这个很简单的,其实都不用配置。 在nacos中ruoyi-gateway.yml配置文件里面: 其实他已经给我们配置好了,只要uri:lb有【lb】就表示负载均衡配置 我们只需要在启动服务的时候改下端口就可以。 然后通过小工具测试下: 结…...