使用 pytest 在 VSCODE 中设置 python 测试时出现问题

2024-03-28

我正在尝试将 VSCode 中的测试扩展与 Python 扩展一起使用。我使用 pytest 作为我的测试库。我的文件夹结构如下所示:

PACKAGENAME/
├─ PACKAGENAME/
│  ├─ __init__.py
│  ├─ main.py
├─ tests/
│  ├─ test_main.py
├─ requirements.txt

In the test_main.py文件我试图导入包代码,以测试它:

from PACKAGENAME import *

从命令行,在根目录中,PACKAGENAME,我可以使用命令python -m pytest测试运行良好。不存在找不到模块的问题。但是,当我尝试使用 VSCode 测试选项卡时,发现了测试,但出现以下错误:

=================================== ERRORS ====================================
_____________________ ERROR collecting tests/test_main.py _____________________
ImportError while importing test module 'd:\PATH\TO\PACKAGENAME\tests\test_main.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
C:\Users\USER\anaconda3\envs\uni\lib\importlib\__init__.py:127: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
tests\test_main.py:1: in <module>
    from PACKAGENAME import *
E   ModuleNotFoundError: No module named 'PACKAGENAME'
=========================== short test summary info ===========================

有什么办法可以让这个工作而不必使用命令行吗?


我建议你尝试这样:

  • 确保您的 VS Code 工作区设置为parent目录(根目录)PACKAGENAME
  • 添加一个空的__init__.py文件输入tests目录
  • in test_main.py, 代替from PACKAGENAME import * with from PACKAGENAME.main import *
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 pytest 在 VSCODE 中设置 python 测试时出现问题 的相关文章

  • 熊猫在移动的数据帧上滚动

    这是一段代码 我不明白为什么在最后一列 rm 5 上 前 4 项得到 NaN 我知道对于 rm 列 前 4 项未填充 因为没有可用数据 但如果我移动列计算 应该进行 不是吗 同样 我不明白为什么 rm 5 列中有 5 个而不是 4 个项目是
  • 如何让电脑看起来像是在打字? [复制]

    这个问题在这里已经有答案了 我希望它看起来像是计算机正在尝试向用户输入信息 我尝试了一些代码 但是当我运行它时 它只是一次打印所有内容 即使我一次打印 1 个 A Random sentence for x in A time sleep
  • python 函数中的任意数量的参数

    我想学习如何在 python 函数中传递任意数量的参数 所以我以递归方式编写了一个简单的 sum 函数 如下所示 def mySum args if len args 1 return args 0 else return args 1 m
  • 为什么playsound函数无法在python中播放我的mp3文件

    所以基本上我试图创建一个音乐播放程序 可以在您要求时播放音乐 我只是想让歌曲播放部分实际工作 所以我编写了一个超级简单的代码来测试它 import playsound playsound sample mp3 This was done i
  • pd.merge_asof 在第二次运行时失败,并显示“ValueError:左键必须排序”

    您好 我正在尝试合并最接近匹配的日期时间的两个数据集 我有开放事件和封闭事件的两个时间戳 merge asof 在开放日期运行良好 但返回 ValueError 左键必须排序 在第二个日期时间 我在这两种情况下都按相关的日期时间排序 第一个
  • 如何获取类变量和类型提示?

    假设我定义一个类 其中包含带有类型提示的类级别变量 例如新的 python 3 7dataclasses class Person name str age int def parse me self what do I do here 我
  • 如何使用 Moq 返回数据或值列表?

    谁能告诉我如何使用 Moq 框架使用模拟对象返回数据列表并将返回的数据列表分配给另一个 List 变量 public class SomeClass public virtual List
  • dask groupby 不合并分区

    我有一组数据 我想要对其进行一些简单的 groupby count 操作 但我似乎无法使用 dask 来完成此操作 我很可能不理解 dask 中执行 groupby reduce 的方式 特别是当索引位于分组键中时 所以我将用玩具数据来说明
  • pandas dataframe 视图与复制,我如何区分?

    有什么区别 pandas df loc col a col b and df loc col a col b 下面的链接没有提到后者 尽管它有效 两者都拉视图吗 第一个拉取视图 第二个拉取副本吗 http pandas pydata org
  • 适用于 Web 照片库的正确 NoSQL 数据架构

    我正在寻找为照片库的 NoSQL 存储构建合适的数据结构 在我的网络应用程序中 一张照片可以是一个或多个相册的一部分 我有使用 MySQL 的经验 但几乎没有使用键值存储的经验 使用 MySQL 我将设置 3 个表 如下所示 photos
  • 如何显示 Jupyter 笔记本的版本并在 Jupyter 笔记本中运行单元?我收到错误:错误的解释器

    我已经安装了 Anaconda 并使用 conda 环境和 conda 命令来安装软件 当我输入 jupyter notebook version 我收到以下错误 zsh Users cr517 local bin jupyter bad
  • 打开文件对象的大小

    有没有办法找到当前打开的文件对象的大小 具体来说 我正在使用 tarfile 模块来创建 tarfile 但我不希望 tarfile 超过特定大小 据我所知 tarfile 对象是类似文件的对象 所以我想通用的解决方案会起作用 ls la
  • Python 中函数未定义错误

    我试图在 python 中定义一个基本函数 但当我运行一个简单的测试程序时 我总是收到以下错误 gt gt gt pyth test 1 2 Traceback most recent call last File
  • 我无法在 docker 中安装 opencv-contrib-python

    我尝试安装opencv contrib python但我无法让它在 docker 上工作 它说找不到满足 opencv contrib python 要求的版本 I tried pip install opencv contrib pyth
  • Python 和 Scipy:如何拟合冯·米塞斯分布?

    我正在尝试拟合来自 scipy 的冯 米塞斯分布 http docs scipy org doc scipy reference generated scipy stats vonmises html http docs scipy org
  • 使用变量访问 Django 模板中的字典元素

    情况如下 我们渲染一个视图 return render request test html db object db object dict dict 在模板中 我们现在想要访问字典db object key 在Python中你通常会这样做
  • 如果我使用不同数量的核心,XGBoost 会产生相同的结果吗?

    我在两台机器上安装了完全相同版本的 XGBoost 0 4 两台机器之间的唯一区别是 RAM 和内核数量 8 与 16 使用完全相同的数据 我无法重现相同的结果 它们略有不同 小数点后第四 第五位 种子保留为默认值 它是高度特定于实现的 但
  • 如何获得 GTK 中的默认颜色?

    Context 在 GTK 3 中 人们可以设置自己的主题 甚至默认主题 Adwaita 也提供两种变体 浅色和深色 当我编写自己的小部件 用Python 时 我需要获取这些颜色以避免在黑色上绘制黑色或在白色上绘制白色 Question 如
  • Scipy:在对整个表面进行集成时加快集成速度?

    I have a probability density function pdf f x y And to get its cumulative distribution function cdf F x y at point x y y
  • 将数据帧转换为多列的系列

    我尝试将数据帧转换为系列但它显示以下错误 我使用 pandas Series Dataframe gt 将 Dataframe 转换为系列 我想要第一张图像格式的输出 请尝试以下方法从提到的数据中获取 Series 对象 假设data是您正

随机推荐