2010-11-22 90 views
4

如何声明变量满足Visual Studio单元测试环境中两个值中的任何一个?多个期望值的Assert.AreEqual(预期,实际)

我见过的其他测试框架,像这样做:

Assert.That(result.ViewName, Is.EqualTo("HomePage") | Is.Empty); 

我没有与Visual Studio的单元测试环境的经验。

+0

尝试`||`而不是`|`? `|`是一个按位“或”,可能不是您要查找的内容。 – climbage 2010-11-22 20:15:59

回答

5

首先,我认为如果您不打算执行按位或运算,您输入的代码行样本包含错误。其次,我怀疑这里有一个误导性的测试,因为单元测试只能测试一个特定的场景。所以,如果你给一个属性分配了一个值,那么你期望这个值可以被它的getter返回。第三,下面是我会如何去做的,考虑到我可能会错过你的观点,并且你肯定需要测试任何一个结果。

Assert.IsTrue(string.Equals(result.ViewName, "HomePage") || string.Equals(result.ViewName, string.Empty)); 

另一方面,我从来没有测试过一个场景,我预计同一个单元测试有两个不同的结果。 Assert.That可能也不错。