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>控制错误回溯的输出格式,选项包括 shortlongnolinepytest --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列出当前项目中所有的 fixturespytest --fixtures
-h显示 pytest 的帮助信息,列出所有可用的命令行参数pytest -h

常见使用案例说明

  1. 显示详细信息:-v / --verbose

    • 用途:在执行测试时显示详细的测试结果,包括每个测试的名称、结果(通过或失败)。
    • 使用示例:
      pytest -v
      
    • 输出示例:
      test_add.py::test_addition PASSED
      test_add.py::test_subtraction FAILED
      
  2. 禁用输出捕获:-s / --capture=no

    • 用途:禁用 pytest 的输出捕获功能,确保 print() 输出会显示在控制台中。
    • 使用示例:
      pytest -s
      
    • 输出示例:
      Test started
      <stdout>: Some debug information
      
  3. 按测试名称过滤:-k

    • 用途:只运行名称匹配指定表达式的测试函数,可以基于函数名进行灵活的过滤。
    • 使用示例:
      pytest -k "add"
      
    • 说明: 运行名称中包含 add 的所有测试,如 test_addtest_addition
  4. 运行特定标记的测试:-m

    • 用途:运行所有带有特定标记的测试,如 smokeregression 等。
    • 使用示例:
      pytest -m "smoke"
      
    • 说明: 只运行带有 @pytest.mark.smoke 标记的测试。
  5. 最大失败次数:--maxfail

    • 用途:限制测试失败的最大次数,如果失败次数超过指定值,则停止测试执行。
    • 使用示例:
      pytest --maxfail=2
      
    • 说明: 运行最多两个失败的测试,超过两次失败则停止执行。
  6. 禁用警告信息:--disable-warnings

    • 用途:禁用所有测试中的警告信息,保持输出简洁。
    • 使用示例:
      pytest --disable-warnings
      
    • 输出示例:
      Test passed
      
  7. 生成 HTML 报告:--html

    • 用途:生成 HTML 格式的测试报告,便于查看和分享测试结果。
    • 使用示例:
      pytest --html=report.html
      
    • 说明: 生成一个 report.html 的测试报告。
  8. 跳过特定测试:--ignore

    • 用途:跳过指定的测试文件或目录,常用于忽略不需要执行的测试。
    • 使用示例:
      pytest --ignore=tests/test_ignored.py
      
  9. 生成 JUnit XML 报告:--junitxml

    • 用途:生成 JUnit XML 格式的报告,通常用于 CI/CD 集成。
    • 使用示例:
      pytest --junitxml=result.xml
      
  10. 指定测试覆盖率:--cov

    • 用途:生成代码覆盖率报告,用于分析测试覆盖了代码的哪些部分。
    • 使用示例:
      pytest --cov=my_module
      

通过结合这些命令行参数,pytest 可以在实际测试过程中提供更多灵活的控制和更详细的输出报告。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/68052.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

10步打造完美ASP.NET、Web API和控制台应用程序文件夹结构

一、前言 在大型项目中&#xff0c;合理的文件夹结构是项目成功的关键之一。一个好的文件夹结构就像是一座井然有序的图书馆&#xff0c;每一本书&#xff08;代码文件&#xff09;都有其固定的位置&#xff0c;让人能迅速找到所需。它可以让团队成员更容易理解和维护代码&…

conntrack iptables 安全组

centos 安装yum install conntrack-tools 1. conntrack状态 NEW: 新建连接&#xff08;第一次包&#xff09;。 ESTABLISHED: 已建立连接&#xff0c;正在传输数据。 RELATED: 与已有连接相关的连接&#xff0c;如 FTP 数据连接。 INVALID: 无效连接&#xff0c;无法识别或不…

相机和激光雷达的外参标定 - 无标定板版本

1. 实现的效果 通过本软件实现求解相机和LiDAR的外参&#xff0c;即2个传感器之间的三维平移[x, y, z]和三维旋转[roll, pitch, yaw]。完成标定后&#xff0c;可将点云投影到图像&#xff0c;效果图如下&#xff1a; 本软件的优势&#xff1a;&#xff08;1&#xff09;无需特…

WPF系列九:图形控件EllipseGeometry

简介 EllipseGeometry用于绘制一个椭圆的形状。它通常与其他图形元素结合使用&#xff0c;比如 Path 或者作为剪切区域来定义其他元素的外形。 定义椭圆&#xff1a;EllipseGeometry 用来定义一个椭圆或者圆的几何形状。参与绘制&#xff1a;可以被用作 Path 元素的数据&…

EFCore HasDefaultValueSql (续2 HasComputedColumnSql)

前情&#xff1a;EFCore HasDefaultValueSql EFCore HasDefaultValueSql (续1 ValueGeneratedOnAdd)-CSDN博客 小伙伴在使用 HasDefaultValueSql 时&#xff0c;对相关的 ValueGeneratedOnAdd, HasComputedColumnSql 也有了疑问&#xff1a; HasComputedColumnSql 对于计算…

qt设置qwidget背景色无效

最近在做一个界面&#xff0c;有三个子窗体&#xff0c;于是就把各个子窗体分别做成了三个UI&#xff0c;再将3个UI&#xff0c;放到1个UI&#xff0c;再将那一个UI在其他窗体上进行提升。 最后就发现怎么设置qwidget的背景都没有效果。 在Qt中&#xff0c;如果是给Qwidget的…

【Rust学习笔记】Rust 的所有权介绍

博主未授权任何人或组织机构转载博主任何原创文章&#xff0c;感谢各位对原创的支持&#xff01; 博主链接 博客内容主要围绕&#xff1a; 5G/6G协议讲解 高级C语言讲解 Rust语言讲解 文章目录 Rust中的所有权介绍1.1 一个简单的例子1.2 一个稍微复杂的例…

Centos9-SSH免密登录配置-修改22端口-关闭密码登录-提高安全性

Centos9-SSH免密登录配置-修改22端口-关闭密码登录 生成秘钥对将公钥信息存进authorized_keys测试登录查询访问记录、比对指纹更换22访问端口关闭账号密码登录生成秘钥对 生成密钥对,指定 备注 和 文件目录命令执行后,默认两次回车,不设置秘钥使用密码ssh-keygen -t rsa -b …

CentOS7下Hadoop集群分布式安装详细图文教程

1、集群规划 主机 角色 DSS20 NameNode DataNode ResourceManager NodeManager DSS21 SecondaryNameNode NameNode NodeManager DSS22 DataNode NodeManager 1.1、环境准备 1.1.1 关闭防火墙 #查看防火墙状态 firewall-cmd --state #停止…

Github 2025-01-11 Rust开源项目日报 Top10

根据Github Trendings的统计,今日(2025-01-11统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Rust项目10C项目1Swift项目1Yazi - 快速终端文件管理器 创建周期:210 天开发语言:Rust协议类型:MIT LicenseStar数量:5668 个Fork数量:122…

在 Vue 项目中使用地区级联选

在 Vue 项目中使用地区级联选择的完整流程&#xff1a; 1.安装依赖包&#xff0c;这个包提供了中国省市区的完整数据。 npm install element-china-area-data --save 2.导入数据 import { regionData } from element-china-area-data 这个包提供了几种不同的数据格式&#…

深入学习 Python 爬虫:从基础到实战

深入学习 Python 爬虫&#xff1a;从基础到实战 前言 Python 爬虫是一个强大的工具&#xff0c;可以帮助你从互联网上抓取各种数据。无论你是数据分析师、机器学习工程师&#xff0c;还是对网络数据感兴趣的开发者&#xff0c;爬虫都是一个非常实用的技能。在本文中&#xff…

npm i 报错

nodejs中 使用npm install命令时报错 npm err! file C: \user\admin\package.json_package.json 里缺少 description 和 repository 两个n字段。-CSDN博客

基于改进粒子群优化的无人机最优能耗路径规划

目录 1. Introduction2. Preliminaries2.1. Particle Swarm Optimization Algorithm2.2. Deep Deterministic Policy Gradient2.3. Calculation of the Total Output Power of the Quadcopter Battery 3.OptimalEnergyConsumptionPathPlanningBasedonPSO-DDPG3.1.ProblemModell…

Redis为 List/Set/Hash 的元素设置单独的过期时间

一.业务简介 我们知道&#xff0c;Redis 里面暂时没有接口给 List、Set 或者 Hash 的 field 单独设置过期时间&#xff0c;只能给整个列表、集合或者 Hash 设置过期时间。 这样&#xff0c;当 List/Set/Hash 过期时&#xff0c;里面的所有 field 元素就全部过期了。但这样并不…

Mysql常见知识点

Mysql是最常用的数据库了。 1、什么是关系型数据库&#xff1f; 关系型数据库&#xff08;RDB&#xff0c;Relational Database&#xff09;就是一种建立在关系模型的基础上的数据库。关系模型表明了数据库中所存储的数据之间的联系&#xff08;一对一、一对多、多对多&#…

【51单片机】03 蜂鸣器-播放音乐

蜂鸣器-播放音乐 一、原理介绍1.硬件电路 二、练习1.让蜂鸣器发声2.尝试演奏小星星 一、原理介绍 蜂鸣器分为有源蜂鸣器、无源蜂鸣器两种。 有源蜂鸣器&#xff1a;施加合适的电压之后就会发出特定频率的声音 无源蜂鸣器&#xff1a;需要提供特定频率的声音信号&#xff0c;才能…

leetcode热题100——NO.206反转链表——JAVA

一、题目描述 给你单链表的头节点 head &#xff0c;请你反转链表&#xff0c;并返回反转后的链表。 二、题目分析 双指针操作&#xff1a;prev指针&#xff0c;curr指针&#xff1b; 对单链表的理解&#xff1a;包含属性&#xff08;成员变量&#xff09;和方法&#xff1…

30_Redis哨兵模式

在Redis主从复制模式中,因为系统不具备自动恢复的功能,所以当主服务器(master)宕机后,需要手动把一台从服务器(slave)切换为主服务器。在这个过程中,不仅需要人为干预,而且还会造成一段时间内服务器处于不可用状态,同时数据安全性也得不到保障,因此主从模式的可用性…

汽车基础软件AutoSAR自学攻略(四)-AutoSAR CP分层架构(3) (万字长文-配21张彩图)

汽车基础软件AutoSAR自学攻略(四)-AutoSAR CP分层架构(3) (万字长文-配21张彩图) 前面的两篇博文简述了AutoSAR CP分层架构的概念&#xff0c;下面我们来具体到每一层的具体内容进行讲解&#xff0c;每一层的每一个功能块力求用一个总览图&#xff0c;外加一个例子的图给大家进…