前言

        pytest 拥有丰富的插件生态,可以扩展其功能。以下是需要重点掌握的几款核心插件。

        若没有 pytest 基础,请点击前往:零基础测开学习 10——pytest_基础

        若已有 pytest 基础,但不了解 fixture,请点击前往:零基础测开学习 11——pytest_fixture

        若已有 pytest 基础,且了解 fixture,但不了解 pytest 的进阶控制,请点击前往:零基础测开学习 12——pytest_进阶控制


安装步骤

1.打开命令行终端

2.执行安装命令:输入 pip install <你的插件名>(例如:安装 pytest-html 的命令是 pip install pytest-html)

3.验证安装:安装完成后,可以运行 pytest --version 查看已安装的 pytest 版本,显示可用的插件。更直接的方式是,直接尝试运行插件的功能,看是否生效。


pytest-html

用于生成直观的 HTML 格式测试报告,便于结果查看和分享。使用命令 pytest --html=report.html 生成报告。

pytest --html = report.html

pytest-xdist

支持并行运行测试,可以极大地缩短大型测试套件的执行时间。使用 pytest -n auto 可以自动检测 CPU 核心数进行并行

pytest -n auto

pytest-order

允许你通过

@pytest.mark.run(order=1)

这样的标记来控制测试用例的执行顺序。虽然应尽量避免测试依赖,但在某些特殊场景下非常有用。


pytest-rerunfailures

对于处理一些偶发性的故障(如网络波动)非常有效,它可以对失败的测试用例进行重试。使用 pytest --reruns 3 指定重试次数。

pytest -reruns 3

5.pytest-result-log

将每个测试用例的执行结果清晰、结构化地记录到日志文件中。这对于测试结果的审计、问题排查和生成历史记录特别有帮助。

使用:

  1. 安装

  2. 配置 pytest.ini 文件

    [pytest]
    # 指定日志文件路径
    log_file = ./pytest.log
    # 设置日志记录级别
    log_file_level = info
    # 设置日志格式
    log_file_format = %(levelname)-8s %(asctime)s [%(name)s:%(lineno)s] : %(message)s
    # 设置日期格式
    log_file_date_format = %Y-%m-%d %H:%M:%S
    

3.完成此配置后,运行 pytest,插件就会自动将用例执行结果记录到指定的 pytest.log 文件中。


后记

        可以自行手动去尝试一下这些插件,站在巨人的肩膀上,去享受封装的魅力,并提高你的测试效率。


↙↙↙阅读原文可查看相关链接,并与作者交流