Встречается на 1% собеседований по Python
Какие бывают параметры scope в fixture в pytest
В pytest фикстуры могут иметь разные области видимости (scope), которые определяют, как часто фикстура будет создаваться и уничтожаться:
function(по умолчанию) - фикстура создается и уничтожается для каждой тестовой функцииclass- фикстура создается один раз для всего класса тестовmodule- фикстура создается один раз для модуля (файла)package- фикстура создается один раз для пакета (директории)session- фикстура создается один раз для всей сессии тестирования
Пример:
python
import pytest
@pytest.fixture(scope='module')
def db_connection():
conn = create_db_connection() # создается один раз для модуля
yield conn
conn.close() # закрывается после всех тестов модуля
def test_query1(db_connection):
assert db_connection.execute("SELECT 1") == 1
def test_query2(db_connection):
assert db_connection.execute("SELECT 2") == 2Выбор scope влияет на производительность тестов - чем шире scope, тем меньше накладных расходов, но нужно учитывать, что состояние фикстуры будет сохраняться между тестами.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы