gpt4 book ai didi

c# - 我将如何对使用控制台的此 c# 方法进行单元测试?

转载 作者:行者123 更新时间:2023-11-30 21:30:22 25 4
gpt4 key购买 nike

我如何在代码中测试这个方法?我是否只需要为我拥有的输入或其他输入赋值?它应该通过正确创建具有正确细节的歌曲来检查 ISD 是否正常工作

static Song InputSongDetails()
{
Console.WriteLine("What is the name of your song");
string name = Console.ReadLine();

Console.WriteLine("What is the artists name");
string artist = Console.ReadLine();

int records;
Console.WriteLine("How many records did it sell");
while (!int.TryParse(Console.ReadLine(), out records) || records < 0)
{
Console.WriteLine("That is not valid please enter a number");
}
return new Song(name, artist, records);
}

最佳答案

最好的方法可能是使用一些接口(interface)抽象出 Console。但是,您也可以使用所需数据预先填充 ConsoleIn 缓冲区。

例如:

var data = String.Join(Environment.NewLine, new[]
{
"Let it be",
"Beatles",
// ...
});

Console.SetIn(new System.IO.StringReader(data));

// usage:
var songName = Console.ReadLine();
var artistName = Console.ReadLine();

参见 MSDN

关于c# - 我将如何对使用控制台的此 c# 方法进行单元测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54530504/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com