Параметризация теста выполняется для запуска теста с несколькими наборами входов. Мы можем сделать это с помощью следующего маркера —
@pytest.mark.parametrize
Скопируйте приведенный ниже код в файл с именем test_multiplication.py —
import pytest @pytest.mark.parametrize("num, output",[(1,11),(2,22),(3,35),(4,44)]) def test_multiplication_11(num, output): assert 11*num == output
Здесь тест умножает входное значение на 11 и сравнивает результат с ожидаемым выходным значением. Тест имеет 4 набора входных данных, каждый из которых имеет 2 значения: одно — это число, которое нужно умножить на 11, а другое — ожидаемый результат.
Выполните тест, выполнив следующую команду —
Pytest -k multiplication -v
Приведенная выше команда сгенерирует следующий вывод: