【发布时间】:2011-11-03 16:08:22
【问题描述】:
在测试返回类型为 bool 的方法时。
你应该有:
expected = true;
Assert.AreEqual(expected, actual);
或
Assert.IsTrue(actual);
我知道它们都产生相同的结果,但哪种做法更好?
编辑:例如,如果我执行 AreEqual,它是否与在返回以下字符串的方法上执行 IsTrue 本质上不同:
string expected = “true”;
string actual = test.testMethod(data)
bool test;
if expected.equals(actual)
test = true;
else
test = false;
Assert.IsTrue(test);
【问题讨论】:
-
在什么情况下你有一个变量
expected你知道总是正确的?也就是说,如果您知道它总是正确的,那么为什么首先要有一个变量呢?只需使用文字true。 -
@EricLippert:他正在尝试适应 VS 自动生成的模式,看起来一模一样(右键单击返回布尔值的方法,然后单击创建单元测试)。
标签: c# .net unit-testing