`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 命令查看所有可用的参数和选项。

相关推荐
2501_94442412几秒前
Flutter for OpenHarmony游戏集合App实战之俄罗斯方块七种形状
android·开发语言·flutter·游戏·harmonyos
Blossom.11825 分钟前
AI Agent智能办公助手:从ChatGPT到真正“干活“的系统
人工智能·分布式·python·深度学习·神经网络·chatgpt·迁移学习
应用市场26 分钟前
Adam优化器深度解析:从数学原理到PyTorch源码实
人工智能·pytorch·python
a努力。28 分钟前
2026 AI 编程终极套装:Claude Code + Codex + Gemini CLI + Antigravity,四位一体实战指南!
java·开发语言·人工智能·分布式·python·面试
梦茹^_^33 分钟前
flask框架(笔记一次性写完)
redis·python·flask·cookie·session
二川bro40 分钟前
Java集合类框架的基本接口有哪些?
java·开发语言·python
抠头专注python环境配置42 分钟前
解决“No module named ‘tensorflow‘”报错:从导入失败到环境配置成功
人工智能·windows·python·tensorflow·neo4j
zhangfeng11331 小时前
PowerShell 中不支持激活你选中的 Python 虚拟环境,建议切换到命令提示符(Command Prompt)
开发语言·python·prompt
qh0526wy1 小时前
WINDOWS BAT 开机登录后自动启动
windows·python
程序员哈基耄1 小时前
浏览器文件格式转换工具:简单、安全、高效的文本与数据处理助手
python·安全·数据挖掘