用 Allure 生成 pytest 测试报告:从安装到使用全流程

一、安装 Allure 相关依赖

要使用 Allure 生成 pytest 测试报告,首先需要安装必要的依赖包。我们可以通过 pip 命令来安装 allure-pytest,它是连接 pytest 和 Allure 的桥梁,能让 pytest 生成 Allure 可识别的测试结果数据。打开命令行终端,执行以下命令:

bash 复制代码
pip install allure-pytest

二、安装 Allure 命令行工具

除了 Python 依赖,还需要安装 Allure 本身的命令行工具,这样才能基于测试结果数据生成最终的报告。

  1. 下载 Allure:前往 https://github.com/allure-framework/allure2/releases 下载 Allure 的安装包。
  2. 解压安装包:将下载好的安装包解压到一个不包含中文路径的目录下。
  3. 配置环境变量:
    • 找到解压后文件夹内的 bin 目录。
    • 右键点击"我的电脑"(或"此电脑"),选择"属性"。
    • 进入"高级设置",找到"环境变量"。
    • 在系统环境变量的 Path 项中,添加 Allure 解压目录下的 bin 目录路径。
  4. 验证安装:在命令行中输入 allure --version,如果能显示 Allure 的版本信息,说明安装配置成功。

三、配置 pytest.ini 文件

要修改 pytest.ini 配置文件(如果没有该文件,在项目根目录下新建)。配置内容如下:

ini 复制代码
[pytest]
addopts = -s --alluredir report
testpaths = ./scripts
python_files = test*.py
python_classes = Test*
python_functions = test*
  • addopts = -s --alluredir report-s 表示禁用 pytest 的输出捕获,让测试中的 print 等打印语句能直接显示在控制台;--alluredir report 指定生成 Allure 测试结果数据的目录为 report
  • testpaths = ./scripts:指定 pytest 查找测试用例的根目录为 ./scripts
  • python_files = test*.pypython_classes = Test*python_functions = test*:分别指定测试文件、测试类、测试函数的命名规则,只有符合这些规则的文件、类、函数才会被识别为测试用例。

四、生成测试结果文件

配置好 pytest.ini 后,在项目根目录下打开命令行终端,执行以下命令:

bash 复制代码
pytest

执行完成后,pytest 会在指定的 report 目录下生成测试结果的 JSON 文件,这些文件是后续生成 Allure 报告的基础数据。

五、生成 Allure 测试报告

有了测试结果数据后,就可以使用 Allure 命令行工具生成最终的测试报告了。在命令行中执行:

bash 复制代码
allure serve report

执行该命令后,Allure 会启动一个本地服务,并自动在浏览器中打开生成的测试报告页面。在报告页面中,可以直观地查看测试用例的执行情况、通过率、错误信息等内容,还能进行交互操作,比如筛选测试用例、查看详细日志等。