Visual studio 对于多个预期值,Assert.AreEqual(预期值,实际值)
在VisualStudio的单元测试环境中,如何断言变量满足两个值中的任何一个 我见过其他测试框架这样做:Visual studio 对于多个预期值,Assert.AreEqual(预期值,实际值),visual-studio,unit-testing,assert,Visual Studio,Unit Testing,Assert,在VisualStudio的单元测试环境中,如何断言变量满足两个值中的任何一个 我见过其他测试框架这样做: Assert.That(result.ViewName, Is.EqualTo("HomePage") | Is.Empty); 我对Visual Studio的单元测试环境没有经验。首先,如果您不打算执行按位或按位操作,我认为您键入的代码样本行包含错误 Assert.That(result.ViewName, Is.EqualTo("HomePage") || Is.Empty);
Assert.That(result.ViewName, Is.EqualTo("HomePage") | Is.Empty);
我对Visual Studio的单元测试环境没有经验。首先,如果您不打算执行按位或按位操作,我认为您键入的代码样本行包含错误
Assert.That(result.ViewName, Is.EqualTo("HomePage") || Is.Empty);
其次,我怀疑这是一个误导性的测试,因为单元测试只能测试一个特定场景。因此,例如,如果您为一个属性指定了一个值,那么您希望这个值由它的getter返回
第三,考虑到我可能会错过你的观点,你肯定需要测试这两种结果,我会这样做
Assert.IsTrue(string.Equals(result.ViewName, "HomePage") || string.Equals(result.ViewName, string.Empty));
另一方面,我从来没有测试过一个场景,在这个场景中,我期望从同一个单元测试中得到两个不同的结果<代码>断言。可能也不错。尝试
|
而不是|
|
是一个按位OR,可能不是您要查找的。按位操作(|)直接来自示例,尽管我完全阅读了它(最肯定的不是OR(| |)!)。这来自NUnit,应该是一个“替代”约束断言,但我仍然不确定其意图是什么,如果不是OR的话。