当前位置: 首页 > 知识库问答 >
问题:

使用py.test进行测试时缺少必需的依赖项

柳鸿信
2023-03-14

我有一个python文件,其中包含类和函数以及

if __name__ == "__main__":
    ...

建筑我想用py.test测试这个文件中定义的类。对于我的第一个“hello world”测试,我的测试文件只导入要测试的文件。

然而,在PyCharm中运行py.test会导致

raceback (most recent call last):
  File "[...]/unittest/datageneration_test.py", line 1, in <module>
    from main.datageneration import *
  File "[...]/main/datageneration.py", line 1, in <module>
    import pandas as pd
  File "[...]/lib/python3.6/site-packages/pandas/__init__.py", line 19, in <module>
    "Missing required dependencies {0}".format(missing_dependencies))
ImportError: Missing required dependencies ['numpy']

我要测试的文件包含导入语句

import pandas as pd
import numpy as np
from scipy.special import expit
import sys
import os
import scipy.io.wavfile as wav
import json
import uuid

我的conda environment.yml是

channels:
- conda-forge
- defaults
dependencies:
- pandas=0.20.3
- numpy=1.13.1
- ggplot=0.11.5
- python=3.6.2
- pytest=3.2.1

这里的问题是什么?

共有1个答案

冯星阑
2023-03-14

我不确定是什么帮助了我,但我用conda install…重新安装/更新了numpy和pandas。我仍然有一个关于文件名错误的错误。在尝试了很多东西之后,我发现,即使我使用的是pytest,而不是库unittest,我也无法命名所有测试文件都是“unittest”的文件夹。将其重命名为“unittests”解决了这一问题。现在一切都好了。

 类似资料:
  • 我能够成功运行所有使用pandas的脚本,但突然我所有的pandas脚本都出现以下错误: 回溯(最近一次呼叫最后一次): 文件“data_visualization.py”,第5行,在 文件“/usr/lib64/python2.7/site packages/pandas/init.py”,第18行,在 最近我没有安装或更新任何新东西。 有人对此有解决办法吗? 我卸载了熊猫和Numpy,并重新安

  • 从昨天开始,我尝试在anaconda上导入包时出现以下错误: 我尝试过卸载Anaconda和Python,切换到Python 2.7,但没有任何效果仍然是相同的错误,下面是我得到的代码: 非常感谢您的帮助,谢谢!

  • 我正在尝试扩展TestBase类,但找不到以下项的正确依赖关系: 我不太熟悉Maven,但在pom.xml中添加了以下依赖项: 我希望olwapi-contract依赖项包含测试包。但是,在我的Maven依赖项下,我只看到以下内容:

  • 问题内容: 我有一个重写版本discord.py。如果消息中包含内容,则不会发生错误。如果消息中内容不存在,则我希望该错误不会发生。 我的代码: 完整回溯: 问题答案: 命令解析参数的方式意味着定义 表示需要单词作为命令调用的一部分。如果您想捕获消息的其余部分,则可以使用仅关键字参数语法: 此功能在此处记录。

  • 云功能部署失败:缺少资源项目/ourcafe-mucqxq上service-1044193269753@gcf-admin-robot.iam.gserviceAccount.com的必需权限resourceanager.projects.getiampolicy。请授予service-1044193269753@gcf-admin-robot.iam.gserviceAccount.com云功能

  • 我对React这个话题还不熟悉。我最近启动了它,但当我想启动React应用程序时遇到了一个问题“纱线开始”显示此错误: 请问我怎样才能克服这个错误。 我试图在网上找到解决方案,但我并不幸运。请问问题出在哪里?