Visual Studio Code не обнаруживает все тесты в новой среде conda - PullRequest
0 голосов
/ 03 июля 2019

Сначала я работал в базовой среде conda, и она работала нормально, она обнаруживает все тесты.Однако, так как я хотел использовать более конкретные пакеты, я решил, что было бы неплохо настроить новую среду.

В VS Code новая среда находит только одну папку с двумя тестами, но не другуюone.

Однако в приглашении Anaconda все это находит.

(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: Выбрать переводчика'):

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

Когда я использую нерабочую среду, тесты обнаруживаются только втермо папка. Поскольку тестовые файлы не изменились, я уверен, что синтаксис в порядке, и это не причина, по которой они не найдены. Я также проверил, что импортированные модули установлены в conda, так что это не приводит к сбоюобнаружение импорта и тестирования. Правильная установка модулей, кажется, подтверждается тем фактом, что (тестовая) среда работает в приглашении anaconda.

Яв полной потере.Я подозреваю, что что-то не так с некоторыми переменными пути, но я не знаю, где искать.

РЕДАКТИРОВАТЬ: по какой-то причине, если я использую канал conda-forge и устанавливаю пакет coolprop (вместе с numpy, scipy,Python и Pylint) он находит все тесты в VsCode.Я попытался выяснить, почему, но пока не нашел причины для такого магического поведения (я пытался создать среду без coolprop, но с той же версией python, что и у среды с coolprop, но эта среда также не работает должным образом в vs-коде)

...