You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python Selenium生成Allure报告时出现AttributeError报错求助

解决Allure报告生成时的AttributeError: module 'allure' has no attribute 'severity_level'问题

这个问题我之前帮同事排查过,本质是allure-pytest版本更新带来的API命名变更,下面给你分步解决的方案:

一、问题根源

在较新版本的allure-pytest(大概2.10.0及以上)中,官方把原来的小写蛇形枚举severity_level重命名成了大驼峰格式的SeverityLevel,所以旧代码里的allure.severity_level自然会找不到对应的属性。

二、快速修复方案

方案1:修改测试代码中的枚举引用

把你测试用例里所有用到allure.severity_level的地方替换成allure.SeverityLevel,比如:
原来的代码:

import allure

@allure.severity(allure.severity_level.CRITICAL)
def test_critical_case():
    # 测试逻辑
    pass

改成:

import allure

@allure.severity(allure.SeverityLevel.CRITICAL)
def test_critical_case():
    # 测试逻辑
    pass

方案2:直接使用字符串指定级别(更兼容)

如果不想依赖枚举类,也可以直接传入字符串形式的级别,这样不管新版本还是旧版本都能兼容:

import allure

@allure.severity("CRITICAL")
def test_critical_case():
    # 测试逻辑
    pass

支持的级别字符串有:"BLOCKER"、"CRITICAL"、"NORMAL"、"MINOR"、"TRIVIAL"

方案3:降级allure-pytest到旧版本(不推荐)

如果暂时不想改代码,可以降级到还保留severity_level的旧版本,比如:

pip uninstall allure-pytest -y
pip install allure-pytest==2.8.16

不过不推荐这种方式,因为旧版本可能存在安全或功能缺陷。

三、额外注意事项

你执行的命令里--alluredir= /path有个空格,这可能导致路径解析错误,建议改成:

pytest --alluredir=/path/to/report/directory

或者相对路径:

pytest --alluredir=./allure-results

内容的提问来源于stack exchange,提问作者Bunti Sharma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 07:17:39