Pytest CLI
Install
pip install pytest pytest-asyncio
pytest --help
Usage
Ниже приведен краткий обзор соглашений об именах, чтобы ваш тестовый код можно было обнаружить с помощью pytest:
Тестовые файлы должны быть названы
test_<something>.py
или<something>_test.py
.Методы и функции тестирования должны быть названы
test_<something>
.Тестовые классы должны быть названы
Test<Something>
.
pytest # search into a current directory all functions started from 'test_' or ended with '_test'
pytest path/to/test_1.py path/to/test_2.py
pytest path/to/test_1.py::test_constructor # Run the 'test_asdict' function only
Запустить только один тест:
pytest path/to/test_1.py::test_function
pytest path/to/test_1.py::TestClass::test_method
Вывести информацию о тестах
-v — подробно
-q — кратко
Другие ключи посмотреть можно в статье на habr или pytest --help
.
Пример структуры файлов для тестов
/tests
/func — Functional tests
/unit — Unit-tests
pytest.ini — (optional) настройки pytest
conftest.py — Hook functions and fixtures
Hook functions являются способом вставки кода в часть процесса выполнения pytest для изменения работы pytest. Fixtures — функции, которые будут вызваны до и после выполнения теста (например, для подключения к ресурсу и отключению от него).
Last updated