我正在尝试使用 TDD 在 C# 中编写一个控制台应用程序(我很新)。
我正在尝试遍历包含字符串作为键和整数作为值的字典,并将它们作为“键:值”输出到控制台。我尝试了很多不同的东西,最后找到了一些可能有用的东西:
public void ShowContents ()
{
foreach (KeyValuePair<string, int> item in dictionary) {
Console.WriteLine ("{0}: {1}", item.Key, item.Value);
}
}
我遇到的问题是 - 我不知道如何测试这个。我的测试目前看起来像这样:
[Test ()]
public void CanShowContentsOfDictionary ()
{
dictionary.AddWord ("Hello");
Assert.AreEqual ("Hello: 1", dictionary.ShowContents ());
}
并且显然期望返回值而不是输出到控制台的东西。我在这里的其他地方读到,没有必要对 Console.WriteLine 进行测试,因为您只是假设它有效,因此您可以在此方法中使用 return ,然后编写另一个仅写入控制台的方法(因此不需要进行测试)。问题在于 a) 我不知道如何编写一个返回所有键和值的方法;b)我不是返回一件事,而是返回许多不同的字符串。
关于我如何解决这个问题的任何建议?