1
나는 VS 2012 년 단위 테스트를 배우려고 노력하고 노력하고이 :실제 값과 예상 값은 같지만 단위 테스트는 실패합니다. 왜?
public class Calculator
{
public double substraction(double num1, double num2)
{
return num1 - num2;
}
}
내 테스트 클래스는 여기에 있습니다 : 당신으로
Test Name: calc_substract
Test FullName: MyUnitTest.UnitTest1.calc_substract
Test Source: d:\Users\...
Test Outcome: Failed
Test Duration: 0:00:00,0068363
**Result Message: Assert.AreEqual failed. Expected:<4,2>. Actual:<4,2>.**
:
[TestClass]
public class UnitTest1
{
[TestMethod]
public void calc_substract()
{
var calculator = new Calculator();
Assert.AreEqual<double>(calculator.substraction(5.3, 1.1), 4.2);
}
}
이 오류를 제공 값은 같지만 테스트는 실패합니다. 왜 그런지 알아?
으로 계속 정밀 문제가 발생하지 않습니다. 하지만 왜? 5.3에서 빼기 십진수가 없어야합니다. 어쨌든 고마워요! – cihata87
항상 부동 소수점 계산에 정밀 문제가 발생할 위험이 있습니다. –
맞아, 고마워! – cihata87