为什么空集合断言在 MSTest 中不起作用?

发布于 2024-12-25 21:05:57 字数 326 浏览 0 评论 0原文

我有一个如下的断言

Assert.AreEqual(1.Primes(), new List());

其中 Primes 返回 IList,素数的代码是

公共静态类 PrimesKata { 公共静态 IList Primes(this int n) { 返回新列表(); } }

你可以猜到的,我正在尝试素数 kata,当使用 MSTest 进行单元测试时,此测试失败,但相同的代码在 NUnit 中工作得很好。我需要在 MSTest 中做一些额外的事情才能通过此测试吗?

I have an assertion like the following

Assert.AreEqual(1.Primes(), new List());

Where Primes returns IList and the code for primes is

public static class PrimesKata
{
public static IList Primes(this int n)
{
return new List();
}
}

as you can guess I am trying out the prime number kata, when using MSTest for unit testing this test fails but the same code works just fine in NUnit. Is there something extra I need to do in MSTest for this test to pass?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

装迷糊 2025-01-01 21:05:57

NUnit 的 Assert 支持集合的相等性。

MSUnit 没有。您可以在 MSTest 中使用 CollectionAssert 来代替。

在 .NET 中(例如,与 Java 不同),两个列表并不相等,因为它们具有相同的内容。

NUnit's Assert supports equality of collections.

MSUnit doesn't. You can use CollectionAssert in MSTest instead.

In .NET (unlike Java, for instance) two lists are not equal just because they have the same contents.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文