Как группировать тесты в pytest

Python Middle Без компании
Как группировать тесты в pytest
Ответы
В pytest можно группировать тесты с помощью маркеров (markers) и классов. **1. Маркеры:** Позволяют помечать тесты и запускать их выборочно. ``` import pytest @pytest.mark.slow def test_long_operation(): assert 1 + 1 == 2 @pytest.mark.fast def test_quick_check(): assert True ``` Запуск только помеченных тестов: ``` pytest -m slow ``` **2. Классы:** Группировка тестов в классах для логической организации. ``` class TestMath: def test_add(self): assert 1 + 1 == 2 def test_sub(self): assert 2 - 1 == 1 ``` **3. Фикстуры (scope):** Общие настройки для группы тестов. ``` @pytest.fixture(scope="module") def shared_resource(): return SomeExpensiveSetup() ``` **4. Плагины (pytest-xdist):** Параллельный запуск групп тестов. ``` pytest -n 4 # 4 потока ```