c# - 如何为返回 IEnumerable 的方法编写测试

标签 c# visual-studio-2008 testing

我有一个返回我希望能够测试的 IEnumerable 的方法。对于我将使用的测试输入,它将返回大约 10 个值。

在这种情况下编写测试最简洁的方法是什么?

更新:

非常感谢到目前为止的回答。我现在要研究的几个有用的建议。

我不认为我最初的问题措辞很好,更好的方法如下:

我想为返回 KeyValuePair<string, uint> 的 IEnumerable 的方法编写几个测试.对于我将使用的测试数据集,该方法将仅返回几个值。大多数情况下大约有 10 个值。

在 MSTest 中表达我的预期返回值集和测试方法的最佳方式是什么?

最佳答案

假设您知道应该返回什么结果,我发现 Enumerable.SequenceEqual有用。 (创建一个具有预期结果的数组。)

MoreLINQ我把它包装在 extension method 中这将测试相等性并在不相等时转储两个序列。实际上,MoreLINQ 测试主要是关于序列相等性的测试,因此它们可能会为您提供一些方便的示例 :)

关于c# - 如何为返回 IEnumerable 的方法编写测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1380294/

相关文章:

Python:测试类的单个方法的最佳方法

android - 请参见测试启动状态错误

c# - 在 Visual C# 中永久设置一次文本框值

c# - ASP.NET Core OpenIdConnect 服务器数据保护 key 位置

visual-studio - 在 Visual Studio 2008 中在拆分窗口之间跳转的热键是什么

c++ - 制作库并避免链接器问题

visual-studio-2008 - 将 ffmpeg 连接到 Visual Studio 2008

android - 如何在将 Activity 发送到后台后重新获得对 Activity 的访问权限

c# - 在静态属性 getter 中创建的新对象是否只创建一次?

c# - 覆盖 GetHashCode() 时使用 Guid().GetHashCode() 有什么缺点