Back to questions
Junior — Middle
66
Каким образом выполнить передачу различных входных данных в единичные тесты с использованием pytest?
Companies where asked
Леста
Answer from AI
sobes.tech AI
В pytest для передачи различных входных данных в единичные тесты используется параметризация с помощью декоратора @pytest.mark.parametrize. Это позволяет запускать один и тот же тест с разными наборами аргументов.
Пример:
import pytest
@pytest.mark.parametrize("input,expected", [
(2, 4),
(3, 9),
(4, 16),
])
def test_square(input, expected):
assert input ** 2 == expected
В этом примере тест test_square будет выполнен три раза с разными значениями input и expected. Такой подход удобен для проверки функции на разных входных данных без дублирования кода.