Запустите одну папку тестов pytest в vscode - PullRequest
0 голосов
/ 21 февраля 2020

У меня есть своего рода «микро-сервис» Python РЕПО с настройкой, подобной следующей:

sample
├── bar
│   ├── src
│   │   └── main.py
│   └── tests
│       └── test_main.py
├── foo
│   ├── src
│   │   └── main.py
│   └── tests
│       └── test_main.py
└── shared
    ├── src
    │   └── main.py
    └── tests
        └── test_main.py

В vscode у меня есть только возможность запустить все тесты в foo, bar, shared или выполнение отдельного теста методы в подпапках. Что я хочу сделать, так это быстро запустить foo/tests/.

Есть ли способ настроить pytest / Python для этого? Я не хочу разбивать каждую папку верхнего уровня на отдельное рабочее пространство, потому что я регулярно переключаюсь между ними и не хочу, чтобы было открыто несколько windows на одно рабочее пространство.

Ответы [ 2 ]

0 голосов
/ 25 февраля 2020

В основном есть две опции:

  1. Запустите спецификацию c теста местоположения, указав местоположение в самой командной строке, вы можете получить командную строку, нажав Ctrl + ~
    • например, pytest foo/tests/
  2. Другой способ заключается в создании файла конфигурации pytest в каталоге вашего проекта root. Файл конфигурации должен иметь имя pytest.ini.

    • и присвоить переменной testpaths желаемую папку

Пример follow

[pytest]
testpaths = foo
python_files = tests.py test_*.py *_tests.py *.tests.py

Это будет запускать только тесты в каталоге foo

0 голосов
/ 21 февраля 2020

Вы должны быть в состоянии выполнить команду pytest foo/tests/ в терминале в соответствии с документацией Pytest

...