`pytest` 中一些常用的选项

下面列出的参数和功能涵盖了 pytest 中一些常用的选项,但 pytest 还有许多其他参数和功能。以下是一些补充的 pytest 命令行参数和功能:

其他命令行参数

  1. 测试配置

    • --confcutdir=<path>: 只加载指定目录及其子目录中的配置文件。例如 --confcutdir=src
    • --rootdir=<path>: 设置根目录,这会影响 pytest 查找配置文件的方式。例如 --rootdir=tests
  2. 插件相关

    • --disable-warnings: 禁用警告输出。
    • --version: 显示 pytest 的版本信息。
    • --help: 显示所有可用的命令行参数和选项的帮助信息。
  3. 参数化

    • --tb=<style>: 设置 traceback 样式,shortlonglineno
    • --trace: 使用 Python 的调试器 pdb 调试失败的测试。
  4. 插件管理

    • --plugins: 显示已安装的插件及其版本信息。
    • --maxfail=<num>: 在失败的测试数达到 <num> 后停止测试(如之前所述)。
  5. 性能和并行

    • --slow: 可以与自定义标记结合使用,用于运行标记为 slow 的测试。
    • --numprocesses=<num>: 与 pytest-xdist 插件结合使用,指定并行测试进程的数量。例如 --numprocesses=4
  6. 测试运行

    • --disable-warnings: 禁用警告信息的输出。
    • --reruns=<num>: 失败的测试用例重新执行 <num> 次。需要安装 pytest-rerunfailures 插件。例如 --reruns=2

完整的示例

下面是一个更复杂的示例命令,结合了多种选项:

bash 复制代码
pytest test_demo.py --count=3 --html=report.html --log-cli-level=INFO --maxfail=2 --disable-warnings --tb=short -n 4

这个命令:

  • 执行 test_demo.py 中的所有测试用例,每个用例执行 3 次。
  • 生成 HTML 格式的测试报告,文件名为 report.html
  • 设置日志记录级别为 INFO
  • 在测试失败达到 2 次时停止测试。
  • 禁用警告信息的输出。
  • 使用 short 风格的 traceback。
  • 使用 4 个并行线程执行测试(需要安装 pytest-xdist 插件)。

pytest 的功能非常丰富,具体使用哪些参数可以根据你的测试需求来选择。你可以使用 pytest --help 命令查看所有可用的参数和选项。

相关推荐
曲幽20 小时前
FastAPI + PostgreSQL 实战:从入门到不踩坑,一次讲透
python·sql·postgresql·fastapi·web·postgres·db·asyncpg
冬奇Lab1 天前
PowerManagerService(下):Doze模式与电池优化
android·源码阅读
砖厂小工1 天前
Compose 中函数引用 vs Lambda:到底该用哪个?
android
用户8356290780511 天前
使用 C# 在 Excel 中创建数据透视表
后端·python
码路飞1 天前
FastMCP 实战:一个 .py 文件,给 Claude Code 装上 3 个超实用工具
python·ai编程·mcp
dev派1 天前
AI Agent 系统中的常用 Workflow 模式(2) Evaluator-Optimizer模式
python·langchain
前端付豪1 天前
AI 数学辅导老师项目构想和初始化
前端·后端·python
用户0332126663671 天前
将 PDF 文档转换为图片【Python 教程】
python
悟空爬虫1 天前
UV实战教程,我啥要从Anaconda切换到uv来管理包?
python
dev派1 天前
AI Agent 系统中的常用 Workflow 模式(1)
python·langchain