为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 Go 中针对用户输入编写测试

如何在 Go 中针对用户输入编写测试

Go
动漫人物 2021-06-15 13:38:05
我将如何针对来自 fmt.Scan/Scanf/Scanln 的用户输入进行测试?例如,我如何测试函数输入是否接受来自 STDIN 的“4 5\n”和“1 2 3 4\n”并返回 n == 5 和数组 == [1, 2, 3, 4]。package mainimport (    "fmt")// input gets an array from the user.func input() (m int, array []int) {    fmt.Print("Enter the size of the array, n, and the difference, m: ")    var n int    _, err := fmt.Scanf("%d %d", &n, &m)    if err != nil {        panic(err)    }    fmt.Print("Enter the array as a space seperated string: ")    array = make([]int, n)    for i := 0; i < n; i++ {        _, _ = fmt.Scan(&array[i])    }    return m, array}func main() {    m, array := input()    fmt.Println(m, array)}
查看完整描述

2 回答

?
米脂

TA贡献1836条经验 获得超3个赞

你不能。至少不是那么容易,这样,这将是值得的。


查看完整回答
反对 回复 2021-06-21
  • 2 回答
  • 0 关注
  • 191 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信