Как обеспечить входные данные времени выполнения в тестовых случаях Python

1

При написании тестовых примеров для методов python, как автоматически вводить данные в переменные без запроса ввода пользователем ввода?

def function():
    speed = input('Enter speed:\n')
    if speed == 10:
        pass
    else:
        pass

Для вышеуказанного кода, если мы вызываем этот метод, он предложит пользователю ввести ввод для скорости.

>>> function()
Enter speed:
10

Есть ли способ передать ввод с использованием каких-либо функций или пропустить строку и присвоить значение переменной?
заранее спасибо

Теги:
variables
input
runtime

1 ответ

2

function может быть записана для принятия тестового режима, самым простым способом является аргумент None умолчанию:

def function(speed=None):
    if speed is None:
        speed = input('Enter speed:\n')
    if speed == 10:
        pass
    else:
        pass

Таким образом, он все еще может быть вызван как раньше (он будет запускать input часть):

function()

Или с разными "входами" во время тестирования:

function(5)
function(10)
for i in range(33,50):
    function(i)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню