我正在尝试使用测试驱动的编程实践。但是,我的函数不返回值-它们将内容打印到屏幕上。此外,我的功能还向用户询问问题,我想用不同的用户响应来测试程序的正确性。
这是一个示例程序:
def ask_for_number():
while True:
try:
num = int(input("Please enter a number: "))
print("You entered the number {}".format(num))
break
except Exception:
pass
但是,现在我需要测试此功能。我想测试一下,如果用户输入“ 3”,则程序以“您输入数字3”作为响应,如果用户输入“ a”,然后输入“ 5”,则程序以“请输入数字”作为响应:再次提示,然后输入“您输入了数字5”。
我该如何编写对input
做出响应的测试?