潘德拉的 pytest 问题

标签 pytest importerror python-3.10 pandera

我编写了一个测试来试验 pandera 进行 DataFrame 验证。我将验证模式放入 pytest 固定装置中,并将其传递给我的单元测试。现在,我遇到了这个奇怪的问题:当我将 pandera 安装到我的虚拟环境中时,pytest 停止工作,整个测试套件无法运行(不仅仅是这个测试) ,我收到此导入错误:

导入错误:无法从“pytest”导入名称“Config”

我使用的是python3.10。

我的测试文件夹中确实有一个 __init__.py 文件,但这之前不是问题。我仅在安装 pandera

时收到此错误

我破坏了虚拟环境并创建了一个没有安装 pandera 的新环境,并且我在套件中进行的其他单元测试都顺利通过。安装了 pandera 并出现了相同的导入错误。

有人遇到过这种情况吗?

最佳答案

我使用 pytest 6.2.5 遇到了同样的问题。看来 pandera 版本 >= 0.15.0 会出现此问题。将 pandera 降级到 0.14.5 为我“解决”了这个问题。

但这并不是永久的解决方案。我将为 pandera 提出一个问题,希望有人能尽快修复它。

编辑:当前最新的 pytest 版本 7.4.0 似乎也适用于 pandera >=0.15.0

关于潘德拉的 pytest 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76560221/

相关文章:

python - 我所有的测试函数都在加载 conftest.py 中的 fixture ,即使它们不需要它

python - pytest:从 fixture 打印

python - 如何跨 pytest 装置同步参数化?

python - 导入错误:尝试导入 soundcloud 时无法导入名称 get_content_type

python - Pandas 在 Mac OS X 上的安装 : ImportError (cannot import name hashtable)

python-3.x - Flask/Keras webservice ModuleNotFoundError : No module named 'tensorflow_core.keras'

python-3.10 - 替换版权符号python

pytest - 尝试使用 pytest 在 python 3.10 上执行测试时出错

python - 使用 pyenv 安装 Python 3.10.5

python-3.x - 在 Pytest 中,如何检查一个方法是否是从另一个方法调用的?