Sobes.tech
Back to questions
Senior
18

Реализуйте фикстуру setup_items(), с возможностью передачи ей аргумента count с int значением. Фикстура должна сгенерировать 3 рандомных значения и вернуть в тест.

Companies where asked
OZONOZON

Answer from AI

sobes.tech AI

Пример фикстуры на Python с использованием pytest, которая генерирует заданное количество случайных значений (по умолчанию 3) и возвращает их в тест:

import pytest
import random

@pytest.fixture
def setup_items(request):
    count = getattr(request, 'param', 3)  # по умолчанию 3
    items = [random.randint(1, 100) for _ in range(count)]
    return items

# Пример использования с параметром
@pytest.mark.parametrize('setup_items', [5], indirect=True)
def test_example(setup_items):
    assert len(setup_items) == 5
    print(setup_items)

Здесь фикстура setup_items принимает параметр count через механизм параметризации pytest (request.param). Если параметр не передан, используется значение 3. В тесте можно указать нужное количество элементов.