C#Assert比较两个列表FluentAssertions Xunit

时间:2016-06-07 21:46:47

标签: c# sql visual-studio nunit xunit

我目前正在将可以返回数千个值的SQL查询比较到List ..

我在Fluent Assertion中使用ShouldBeEquivalentTo(),但它需要永远,这是不可接受的。有人知道如何快速完成这项工作吗?

使用X-unit我使用Assert.Equal但是它无法比较List的属性,我读过我必须覆盖方法,但我不想添加任何复杂性。

我发现快速工作的唯一方法是Actual.Equals(Expected);,但问题是如果没有某种框架,我无权访问contains();等方法。

快速比较List属性的最佳方法是什么?我对VisualStudio和C#的其他工具或框架持开放态度。

感谢。

1 个答案:

答案 0 :(得分:1)

你想测试什么? SQL查询的正确性?执行并返回查询的代码? Sql Server?为什么需要测试数千个结果?听起来像你(ab)使用xunit对真实数据进行集成或类似QA的测试。这不是单元测试的目的。

那就是说,我犯了类似的事情。有时您确实需要测试数据库(查询)。如果它是SQL查询或集成测试的“单元测试”,那么您应该使用更小的数据集。

有关比较列表,请参阅https://stackoverflow.com/a/22173807

我认为真正的解决方案是减少您要比较的数据量,并确保您正在测试您真正打算测试的内容。