does not exist。
我们可以做很多事情,但是由于许多原因,我们选择不这样做。原因包括:(a)实施和维护费用; (b)相互竞争的优先事项; (c)对功能的哲学异议。
在这种情况下,您违反了(c)。我们认为 单元测试框架 不应运行多个失败的断言。
xUnit通常比NUnit更自以为是,出于意识形态的原因,将不包括NUnit支持的内容。
,
如果您喜欢BDD /流利风格的断言,则可以考虑使用其中一个与xUnit完全兼容的库:
using (new AssertionScope())
{
actualResult1.Should().Be(expectedResult1,"Mismatch in Score1!");
actualResult2.Should().Be(expectedResult2,"Mismatch in Score2!");
}
var mrBurns = new Person { Name = null };
mrBurns.ShouldSatisfyAllConditions(
() => mrBurns.Name.ShouldNotBeNullOrEmpty(),() => mrBurns.Name.ShouldBe("Mr.Burns"));
,
将您的测试用例放入 IEnumerable<T>
并使用 Assert.All<T>()
:
var expectations = new List<Tuple<object,object>>()
{
new(expectedResult1,actualResult1),new(expectedResult2,actualResult2),new(expectedResult3,actualResult3),};
Assert.All(expectations,pair => Assert.Equal(pair.Item1,pair.Item2));
本文链接:https://www.f2er.com/3036602.html