pytest 常用命令参数

以下是 pytest 常用命令参数 的整理,涵盖测试运行、过滤、调试、报告等常见场景,方便你高效使用 pytest:


1. 基本测试运行

命令说明
pytest运行当前目录及子目录下所有测试(test_*.py*_test.py
pytest path/to/test_file.py运行指定测试文件
pytest path/to/test_dir/运行指定目录下的所有测试
pytest -v显示详细输出(每个测试用例的名称和结果)
pytest -s输出调试信息,包括输出print信息
pytest -q静默模式(只显示简要结果)
pytest -n多线程或分布式执行测试用例

2. 选择特定测试

命令说明
pytest -k "keyword"只运行名称包含 keyword 的测试(模糊匹配)
例:pytest -k "login" 匹配 test_login()TestLogin
pytest path/to/test_file.py::test_func运行指定文件的特定测试函数
pytest path/to/test_file.py::TestClass::test_method运行指定类的特定测试方法
pytest -m marker运行标记(mark)为 marker 的测试
需先在测试中用 @pytest.mark.marker 标记

3. 失败控制与调试

命令说明
pytest --lf--last-failed只重新运行上次失败的测试
pytest --ff--failed-first先运行上次失败的测试,再运行其他
pytest -x遇到第一个失败时停止测试
pytest --maxfail=2最多允许 2 次失败,之后停止
pytest --pdb测试失败时自动进入 pdb 调试器

4. 测试报告与输出

命令说明
pytest -rA显示所有测试结果的详细摘要
pytest --durations=5显示最慢的 5 个测试(性能分析)
pytest --cov=path/to/module生成代码覆盖率报告(需安装 pytest-cov
pytest --html=report.html生成 HTML 测试报告(需安装 pytest-html

5. 参数化与 Fixture

命令说明
pytest --fixtures查看所有可用的 fixture
pytest --setup-show显示测试的 fixture 执行顺序

6. 其他实用参数

命令说明
pytest --collect-only只列出所有测试用例,不执行
pytest --version查看 pytest 版本
pytest -h查看完整帮助文档

常用组合示例

  1. 快速重跑失败测试
    pytest --lf -v
    
  2. 只运行标记为 smoke 的测试
    pytest -m smoke
    
  3. 调试慢测试
    pytest --durations=10 -v
    
  4. 生成覆盖率报告
    pytest --cov=src --cov-report=html
    

配置文件(pytest.ini

可以在项目根目录创建 pytest.ini 文件,默认配置常用参数,例如:

[pytest]
addopts = -v --html=report.html
markers =
    smoke: 冒烟测试
    slow: 慢测试
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值