Назад к вопросам
Yadro
Middle+
6
Что такое фикстуры в pytest? Для чего используются?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В pytest фикстуры — это специальные функции, которые подготавливают и предоставляют тестам необходимые данные или окружение. Они используются для настройки предусловий, например, создание тестовых данных, подключение к базе, настройка окружения и очистка после теста.
Фикстуры позволяют избежать дублирования кода и делают тесты более читаемыми и поддерживаемыми. Их можно использовать повторно в разных тестах, а также задавать область видимости (например, на функцию, класс, модуль).
Пример фикстуры:
import pytest
@pytest.fixture
def db_connection():
conn = create_connection()
yield conn
conn.close()
def test_query(db_connection):
result = db_connection.execute('SELECT 1')
assert result == 1
Здесь фикстура db_connection создаёт подключение, передаёт его тесту, а после теста закрывает подключение.