gpt4 book ai didi

c# - 使用 Fluent Assertions 库的多个断言

转载 作者:太空狗 更新时间:2023-10-29 23:58:47 25 4
gpt4 key购买 nike

似乎 Fluent Assertions 在 NUnit 的 Assert.Multiple block 中不起作用:

Assert.Multiple(() =>
{
1.Should().Be(2);
3.Should().Be(4);
});

运行此代码时,测试在第一个断言后立即失败,因此甚至没有执行第二个断言。

但是,如果我使用 NUnit 的 native 断言,我会得到我想要的结果:

Assert.Multiple(() =>
{
Assert.That(1, Is.EqualTo(2));
Assert.That(3, Is.EqualTo(4));
});

并且输出包含关于这两个失败的详细信息:

Test Failed - ExampleTest()

Message:Expected: 2But was: 1

Test Failed - ExampleTest()

Message:Expected: 4But was: 3

如何使用 Fluent Assertions 和 NUnit 获得相似的结果?

最佳答案

您可以使用 assertion scopes 执行此操作像这样:

using (new AssertionScope())
{
5.Should().Be(10);
"Actual".Should().Be("Expected");
}

关于c# - 使用 Fluent Assertions 库的多个断言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45949961/

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