我正在为一个应用程序进行单元测试,下面是一个单元测试,我无法弄清楚为什么它会失败。
测试结果应该是“等腰”为真,“等边”和“斜角”为假,Console.WriteLine表示它们实际上是正确的,但是由于某种奇怪的原因,该测试无论如何还是失败了。我在这里做错了什么?提前致谢。
我正在使用MSTest框架。
public void isIsosceles()
{
Triangle triangle = new Triangle(2, 2, 5);
var isosceles = triangle.isIsosceles();
var equalateral = triangle.isEquilateral();
var scalene = triangle.isScalene();
Console.WriteLine(isosceles); // True
Console.WriteLine(equalateral); // False
Console.WriteLine(scalene); // False
Assert.IsTrue(true, "Test Isosceles", isosceles);
Assert.IsTrue(false, "Test Equalateral", equalateral); // Fails, why?
Assert.IsTrue(false, "Test Scalene", scalene); // Fails, why?
}
最佳答案
您打错了IsTrue
。
第一个参数是要测试的布尔值:
Assert.IsFalse(equalateral, "Test Equalateral");
您也可以拨打
AreEqual
:Assert.AreEqual(false, equalateral, "Test Equalateral")