Как заставить тестовый обозреватель работать на Python VS Code?
Я недавно установил VSCode, и это расширение Python. Все идет отлично, но тестовый проводник не будет заполняться тестами. Я запустил обнаружение тестов и даже могу запускать тесты, но проводник не будет заполняться какой-либо информацией.
На скриншоте выше мы можем видеть
- пустой тестовый проводник
- мои настройки Python vscode
- вывод тестового открытия
Что тут происходит?
ПРИМЕЧАНИЕ: проблема та, которая ожидается, одна пробная версия пропускается, если только определенный флаг не передан в pytest, и это вызывает эту "проблему
3 ответа
- Вам необходимо настроить тестовую среду (и программу запуска). Нажмите
cntrl + shift + p
и ищите:Python: Configure Tests (Assuming you already have Python extension installed).
- Затем консоль покажет вам несколько вариантов (unittest, pytest, нос...), выберите один из них.
- После этого консоль спросит у вас каталог, в котором находится тест, выберите свой.
После этой настройки вы сможете увидеть весь свой тест в обозревателе тестов.
Я думаю, что это все еще находится в разработке, официально поддерживаются только Pytest и Unittest, но VSCode предложил переменную для поддержки Poetry.
Вот конфигурации, которые сработали для меня:
{
"python.testing.cwd": ".",
"python.poetryPath": ".venv/bin/poetry",
"python.testing.pytestEnabled": true,
"python.testing.pytestPath": ".venv/bin/pytest",
"python.analysis.typeCheckingMode": "basic",
"python.testing.pytestArgs": [
"${workspaceFolder}",
"--rootdir=${workspaceFolder}"
],
"python.testing.unittestEnabled": false,
}
Если вам дополнительно нужно использовать переменные окружения, задайте их в файле .env (лучше бы .env.test, но я не разобрался).
Оказывается, что-то было неправильно настроено. Код VS в конечном итоге автоматически побудил меня изменить настройки моего модульного теста в settings.json из python.unitTest.<stuff>
в python.testing.<stuff>
который исправил тестовый проводник.