Агрегировать или разделять фикстуры pytestPython

Программы на Python
Ответить
Anonymous
 Агрегировать или разделять фикстуры pytest

Сообщение Anonymous »

Два связанных вопроса по pytest:
Разделение фикстуры на отдельные значения
У меня есть фикстура, которая является итерируемой и которая проверено в определенном тесте. Это работает. Однако у меня также есть тест, который хочет проверить отдельные значения — я не знаю, как это сделать.
Например, как мне написать приспособление Student так, что он возвращает каждый из элементов класса?
@pytest.fixture
def klass() -> list[str]:
return ['alice', 'bob', 'claire']

@pytest.fixture
def student(klass) -> str: # HERE IS THE QUESTION
#code that returns each student in the klass individually

def test_klass(klass): # ran once
assert len(klass) > 0

def test_student(student): # ran 3 times
assert isinstance(student, str)

Объединить отдельные значения приборов в одно приспособление
Обратная проблема возникает, если я хочу указать учеников и объединить их в класс (тот же тест функции применяются, как указано выше):
@pytest.fixture(params = ['alice', 'bob', 'claire'])
def student(request) -> str:
return request.param

@pytest.fixture
def klass(student) -> list[str]: # HERE IS THE QUESTION
#code that returns the list with all values for student


Подробнее здесь: https://stackoverflow.com/questions/793 ... t-fixtures
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»