Я работаю над проектом pytorch с использованием кода Visual Studio и пытаюсь использовать py.test.
Однако при попытке обнаружить (или запустить) тесты с использованием расширения vs-code я получаюошибка (см. журнал) импорта факела.Когда я запускаю pytest из терминала, все работает нормально.
Вопрос: Что VS-код делает по-другому, по сравнению со мной, работающим pytest
сам?Как я могу это исправить?
Спасибо
Конфиг и дополнительная информация
- Win10, custom
conda
env, python=3.7
, pytest=3.8
, pytorch=0.4.1 [cuda92]
, vscode 1.27.2
- Когда я удаляю некоторые тесты, чтобы все оставшиеся тесты не вызывали любой код
torch
, все работает нормально (т. е. pytest
config внутри vs-codeдолжно быть правильным) - Путь Python, указывающий на правильное env, задается в vs-code Настройки рабочего пространства
- VS Код, кажется, использует правильную версию conda env и pytest в соответствии с Python Test Log (см.ниже)
- Запуск
pytest
напрямую с терминала работает нормально (см. ниже) - Я могу успешно вызывать модули, используя
torch
через python
или import torch
внутри ipython
- Редактировать 1 : Мне известно о https://github.com/pytorch/pytorch/issues/4518, и я попробовал некоторые из последних предложений в этой теме.(Однако я не думаю, что это действительно моя проблема, потому что, как сказано выше, я могу
import torch
просто отлично.) - Редактировать 2 : я получаю ту же ошибку при запускелюбые модули, которые
import torch
внутри отладчика vs-кода
Вывод журнала тестов Vs-Code Pytest после неудачного «Обнаружения тестов»
============================= test session starts =============================
platform win32 -- Python 3.7.0, pytest-3.8.0, py-1.6.0, pluggy-0.7.1
rootdir: c:\Users\stefan\dev\bnelearn, inifile: pytest.ini
collected 0 items / 1 errors
=================================== ERRORS ====================================
_____________ ERROR collecting bnelearn/tests/test_mechanisms.py ______________
ImportError while importing test module 'c:\Users\stefan\dev\bnelearn\bnelearn\tests\test_mechanisms.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
bnelearn\tests\test_mechanisms.py:3: in <module>
import torch
..\..\Anaconda3\envs\bnelearn\lib\site-packages\torch\__init__.py:80: in <module>
from torch._C import *
E ImportError: DLL load failed: The specified module could not be found.
!!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!!
=========================== 1 error in 0.12 seconds ===========================
Выводпрямого хода питчера