Assert.AreEqual vs Assert.IsTrue/Assert.IsFalse
本文关键字:Assert IsFalse vs AreEqual IsTrue | 更新日期: 2023-09-27 18:13:12
测试返回类型为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);
你应该只使用Assert.IsTrue
,如果你测试的东西直接返回一个布尔值,应该总是为真。
你不应该为IsTrue
处理数据来获得布尔值;相反,您应该调用Assert
或CollectionAssert
中更相关的方法。
在你编辑的例子中,你应该调用Assert.AreEqual
;它会给你一个更好的信息。
使用Assert.IsTrue
更清晰,更简洁。