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

Poetry虚拟环境中运行Pytest时出现Pylenium导入错误

解决Pylenium元类冲突报错的思路

这个报错的核心是Pylenium自定义的Condition元类与Selenium预期条件类的元类不兼容,导致多重继承时触发元类冲突。以下是几个可行的解决方向:

  • 锁定匹配的Selenium版本
    Pylenium对Selenium版本依赖严格,不同版本的Pylenium需要对应特定范围的Selenium版本。比如针对Python3.11,可尝试将Selenium锁定在4.1.x至4.5.x区间(需匹配你使用的Pylenium版本),执行命令:

    poetry add selenium==4.5.0
    

    之后重新安装依赖并运行测试。

  • 更换适配Python3.11的Pylenium版本
    部分旧版Pylenium未适配Python3.11的元类处理逻辑,可查找Pylenium官方版本说明,选择明确支持Python3.11的版本(如3.x系列),替换当前版本后重新安装。

  • 清理依赖缓存后重装
    删除项目根目录的poetry.lock文件和虚拟环境文件夹(默认是.venv),然后执行:

    poetry install
    

    确保依赖完全按照pyproject.toml的约束重新安装,避免缓存的不兼容依赖导致问题。

  • 验证Pylenium包来源
    确保安装的是官方发布的Pylenium包,而非第三方修改版。可在pyproject.toml中明确指定包源:

    pylenium = { version = "x.x.x", source = "pypi" }
    
  • 临时绕过冲突(仅应急使用)
    如果你的测试暂未用到title_is这类冲突的条件,可暂时注释掉conftest.py中from pylenium.a11y import PyleniumAxe的导入,先验证测试是否能正常运行,再后续排查依赖问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 22:33:12