欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 国际 > 【python】pytest可选项

【python】pytest可选项

2024/11/14 18:10:45 来源:https://blog.csdn.net/kissdragan/article/details/141353971  浏览:    关键词:【python】pytest可选项

pytest 是 Python 中常用的测试框架,它提供了许多命令行可选项(options)来增强测试功能和控制测试流程。下面是 pytest 中一些常见的可选项及其功能的详细介绍:

1. 基本可选项

  • -v--verbose:

    • 功能:增加输出的详细程度,显示每个测试函数的名称及其状态。
    • 用法:pytest -v
  • -q--quiet:

    • 功能:减少输出,只显示最基本的信息。
    • 用法:pytest -q
  • -x--exitfirst:

    • 功能:遇到第一个失败的测试就停止测试执行。
    • 用法:pytest -x
  • --maxfail=[num]:

    • 功能:当失败测试数量达到指定数量后停止执行。
    • 用法:pytest --maxfail=2
  • --tb=[style]:

    • 功能:指定 traceback(回溯)风格。可选值包括 auto, long, short, line, native, 和 no
    • 用法:pytest --tb=short

2. 选择测试

  • -k [expression]:

    • 功能:仅运行符合给定表达式的测试。表达式可以是测试名的一部分或布尔表达式。
    • 用法:pytest -k "TestClass and not test_method"
  • -m [marker]:

    • 功能:运行带有特定标记(marker)的测试。
    • 用法:pytest -m marker_name
  • --disable-warnings:

    • 功能:运行测试时不显示警告信息。
    • 用法:pytest --disable-warnings

3. 输出与报告

  • --junitxml=[path]:

    • 功能:生成符合 JUnit XML 格式的测试报告。
    • 用法:pytest --junitxml=report.xml
  • --result-log=[path]:

    • 功能:将测试结果保存到指定文件。
    • 用法:pytest --result-log=results.log(注意:此选项在 pytest 6.0 版本中被移除)
  • --html=[path]:

    • 功能:生成 HTML 格式的测试报告。需要安装 pytest-html 插件。
    • 用法:pytest --html=report.html

4. 插件和扩展

  • --durations=[num]:

    • 功能:显示运行最慢的 N 个测试。
    • 用法:pytest --durations=5
  • --lf--last-failed:

    • 功能:仅重新运行上次失败的测试。
    • 用法:pytest --lf
  • --ff--failed-first:

    • 功能:优先运行上次失败的测试。
    • 用法:pytest --ff
  • --pdb:

    • 功能:在失败的测试点启用调试器(pdb)。
    • 用法:pytest --pdb

5. 其他常用选项

  • --collect-only:

    • 功能:只收集测试用例而不运行。
    • 用法:pytest --collect-only
  • --cov=[path]:

    • 功能:生成代码覆盖率报告。需要安装 pytest-cov 插件。
    • 用法:pytest --cov=my_package
  • --disable-warnings:

    • 功能:在运行测试时禁用警告输出。
    • 用法:pytest --disable-warnings
  • --maxfail=[num]:

    • 功能:指定最大失败测试数量,达到该数量时停止测试。
    • 用法:pytest --maxfail=3

示例

# 运行测试并生成详细输出,同时生成 HTML 和 JUnit 报告
pytest -v --html=report.html --junitxml=report.xml

通过合理使用这些可选项,可以更好地控制和定制测试流程,使测试更具针对性和效率。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com