【问题标题】:VSCode on discover tests Error: spawn python ENOENTVSCode 发现测试错误:生成 python ENOENT
【发布时间】:2019-11-11 10:46:50
【问题描述】:

我正在使用virtualenv 在 vscode 中运行一个 python 项目。 Python解释器设置正确。当我试图发现测试时,它给了我一个错误提示

python /Users/user/.vscode/extensions/ms-python.python-2019.10.44104/pythonFiles/testing_tools/run_adapter.py discover pytest -- -s project/
Test Discovery failed: 
Error: spawn /Users/<username>/apps/project/venv/bin/python ENOENT

我的 vscode settings.json 看起来像这样,我还没有配置 launch.json

{
    "python.pythonPath": "/Users/<username>/apps/project/venv/bin/python",
    "python.testing.unittestEnabled": false,
    "python.testing.nosetestsEnabled": false,
    "python.testing.pytestEnabled": true,
    "python.testing.pytestArgs": [
        "project"
    ],
}

当我在终端上键入/Users/&lt;username&gt;/apps/project/venv/bin/python 时,python shell 会打开。

ENOENT 通常意味着它是一个无效的路径,但该路径看起来非常好。

$echo $PATH
/Users/<username>/apps/project/venv/bin

【问题讨论】:

    标签: python visual-studio visual-studio-code vscode-python


    【解决方案1】:

    在我删除了本地 .vscode 文件夹后,它自行解决了 项目,保存工作区,并创建一个新的 .vscode/settings.json 包含测试设置。这似乎已经解决了。

    来源:https://github.com/microsoft/vscode-python/issues/5316

    【讨论】:

    • mv'd 是为了安全起见,但这似乎已经修复了它,太棒了:)
    【解决方案2】:

    我刚遇到同样的问题,发现这是由于python.testing.cwd 设置中不存在的文件夹,我使用workspaceDir 而不是workspaceFolder 作为变量

    请注意,这里的更改似乎需要重新启动 VSCode,即如果您将其更改为错误的值,它似乎会继续工作,但在重新启动后您将获得 ENOENT,反之亦然

    【讨论】:

    • 删除了 pytest.testing.cwd 并重新加载了 VSCode,它也解决了我的问题 - 感谢这个建议非常有效!看起来 VScode 设置即使看起来已更新也会被缓存。
    • 谢谢你。我试图自己解决这个问题,但我不知道必须重新启动/重新加载 vscode/theia,因为其他设置会立即生效。
    【解决方案3】:

    仍然不知道确切的问题是什么,但是我从笔记本电脑上删除了所有 vscode 痕迹。从头开始重新安装它就可以了。

    【讨论】:

      【解决方案4】:

      "python.testing.cwd": "${workspaceFolder}" 添加到settings.json 为我解决了这个问题。

      【讨论】:

        【解决方案5】:

        我遇到了同样的问题,并通过确保所有 settings.json 文件(用户、工作区和可能的 docker 容器)都已清除 python.testing.* 条目来解决它。

        【讨论】:

          猜你喜欢
          • 2017-09-24
          • 2022-11-01
          • 2017-08-31
          • 2016-10-07
          • 2015-03-12
          • 1970-01-01
          • 2018-10-31
          • 2014-09-10
          • 2017-05-06
          相关资源
          最近更新 更多