Visual Studio Code无法在新conda环境中发现所有测试

2024-06-16 14:36:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在康达基地的工作环境,首先,它工作得很好,它发现所有的测试。然而,由于我想使用更具体的包,我决定建立一个新的环境是个好主意。你知道吗

在VS代码中,新环境只找到一个包含2个测试的文件夹,而没有找到另一个。你知道吗

然而,在一条Python的提示下,它发现了一切。你知道吗

(test) C:\Users\<snip>\Dropbox\lit_code>tree
Folder PATH listing for volume Windows
Volume serial number is E028-2C24
C:.
├───.vscode
│   └───.ropeproject
├───basic
│   └───__pycache__
└───thermo
    └───__pycache__

(test) C:\Users\<snip>\Dropbox\lit_code>where python
C:\Users\<snip>\Anaconda3\envs\test\python.exe

(test) C:\Users\<snip>\Dropbox\lit_code>python -m unittest
.......................
----------------------------------------------------------------------
Ran 23 tests in 0.004s

OK

(test) C:\Users\<snip>\Dropbox\lit_code>

以下是非工作环境的vscode设置:

{
    "python.pythonPath": "C:\\Users\\<snip>\\Anaconda3\\envs\\test\\python.exe",
    "python.linting.pylintEnabled": true,
    "python.linting.flake8Enabled": false,
    "python.linting.enabled": true,
    "python.testing.unittestArgs": [
        "-v",
        "-s",
        ".",
        "-p",
        "test*.py"
    ],
    "python.testing.pytestEnabled": false,
    "python.testing.nosetestsEnabled": false,
    "python.testing.unittestEnabled": true,

}

与非工作环境的唯一区别是行(这是我使用“Python:Select解释器”时所更改的内容):

"python.pythonPath": "C:\\Users\\<snip>\\Anaconda3\\python.exe"

当我使用非工作环境时,它只在thermo文件夹中找到测试。由于测试文件没有改变,我确信语法是好的,这不是他们找不到的原因。我还检查了导入的模块是否安装在conda中,这样就不会导致导入和测试发现失败。模块的正确安装似乎通过(测试)环境在anaconda提示符下工作这一事实得到了验证。你知道吗

我完全不知所措。我怀疑某些路径变量有些不同,但我不知道该去哪里找。你知道吗

编辑:出于某种原因,如果我使用condaforge通道并安装coolprop包(连同numpy、scipy、python和pylint),它会在VsCode中找到所有测试。我试图找出原因,但还没有找到这种神奇行为的原因(我尝试创建一个没有coolprop的环境,但是使用与使用coolprop的环境相同的python版本,但是这个环境在vs代码中也不能正常工作)


Tags: testfalsetrue环境code原因testingexe