c# - 为什么此Microsoft单元测试失败?

标签 c# asp.net unit-testing

我有一个单元测试,并且从“距离”计算中存储在实际变量中的数字是6.07328028312884,但仍然表示测试失败。为什么?

        double expected = 6.07328028312884; 
        double actual;
        actual = target.Distance((double)latitude, (double)longitude);
        actual = actual / 1000;

        Assert.AreEqual(expected, actual);

最佳答案

正如Matt所说,比较两个浮点数是否相等不是一个好主意,请使用带有小epsilon的Math.Abs(expected-actual)<epsilon

关于c# - 为什么此Microsoft单元测试失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5068253/

相关文章:

c# - 使用 wsHttpBinding,WCF 忽略了我的 web.config

jquery - 添加 jquery 文件后更新面板不工作

c# - 使用 Facebook API 设置隐私设置

c# - 从我的 C# 应用程序访问 webDav 文件夹时出现 401 未经授权的错误?

c# - PCL - 对于某些目标,无法从 Func<IThing<T>> 转换为 Func<Object>

c# - 如何: Read From colon(:)-Delimited Text Files in C#

c# - Orderby Ascending on a list 错误asp.net

asp.net-mvc - ASP.net MVC RTM 测试命名约定

java - JMockit : How to inject a MockUp class into a tested class?

unit-testing - Spock 数据驱动测试,使用类来测试 "instanceof"断言