c# - xUnit : 多断言或软断言
问题描述
如何在 xUnit 中找到多个断言或软断言?我发现 Nunit 有以下能力,试图在 xUnit 中找到类似的选项。
Assert.Multiple(() =>
{
Assert.AreEqual(expectedResult1, actualResult1, "Mismatch in Score1!");
Assert.AreEqual(expectedResult2, actualResult2, "Mismatch in Score2!");
Assert.AreEqual(expectedResult3, actualResult3, "Mismatch in Score3!");
});
解决方案
它不存在。
我们可以做很多事情,但出于很多原因,我们选择不做。原因包括: (a) 实施和维护成本;(b) 相互竞争的优先事项;(c) 对特征的哲学反对。
在这种情况下,您与 (c) 发生冲突。我们不认为一个单元测试框架应该运行多个失败的断言。
xUnit 通常比 NUnit 更固执己见,出于意识形态原因,不会包含 NUnit 支持的东西。
推荐阅读
- java - JavaFX - 将信息从弹出窗口的控制器传递到调用控制器
- c# - 如何使 C# winform 程序完全可移植?
- python - Python Pandas Statsmodel OLS 问题
- linux - 验证 BASH 脚本时出现问题
- python - 使用延迟(DASK)读取大型 CSV 文件
- javascript - 使用javascript的最大子数组
- haskell - do-notation/enumFromTo 中的模式匹配会减慢 Haskell 代码的速度吗?
- javascript - 在 JavaScript 中返回修改后的对象(类似于镜头)
- html - 移动视图上不需要的空间
- r - 有人可以解释 DT::dataTableProxy 是如何工作的吗?