Sobes.tech
Back to questions
Junior — Middle
55

Можете объяснить, что подразумевается под fixture в рамках тестирования с использованием pytest?

Companies where asked
Медси
РунитиРунити
Леста

Answer from AI

sobes.tech AI

В pytest fixture — это специальная функция, которая подготавливает и предоставляет тестам необходимые ресурсы или данные. Она позволяет настроить окружение перед запуском теста и очистить его после, обеспечивая повторное использование кода и изоляцию тестов.

Например, если нужно подключиться к базе данных или создать тестовые данные, fixture создаст это один раз и передаст в тесты через параметризацию:

import pytest

@pytest.fixture
def sample_list():
    return [1, 2, 3, 4]


def test_sum(sample_list):
    assert sum(sample_list) == 10

Здесь sample_list — fixture, которая возвращает список, используемый в тесте. Это упрощает поддержку и делает тесты более читаемыми.