自由是冠军

制作软件,并以此获得自由!

使用NUnit进行浮点数测试准则

使用NUnit进行浮点数测试准则


浮点数(floatdouble),由于某种原因计算机无法保证百分之百的精确表达它们,很容易出现一些偏差。因此在使用Assert.AreEquals断言进行测试时,必须要指定一个误差参数。


                                Assert.AreEqual(expected, actual, tolerance [, string message])


参数expected是期望得到的值;参数actual是被测试的代码执行后实际产生的值;参数tolerance是误差参数,该参数决定expectedactual接近到何种程度才算相等(或者说该参数决定expectedactual接近到何种程度就认为它们相等);参数messageexpectedactual不一致时将会报告的消息。


对于商业程序而言,必须精确到小数点后45位。对于科学计算程序,需要更高的精度。


参见文章:

“单元测试应该测试什么?——Right-BICEP

“用NUnit测试异常另有妙法!! ”

“NUnit断言大全”

阅读更多
个人分类: 单元测试
上一篇橡皮筋
下一篇比派克还派克——用Pen在Graphics上面画线的若干细节
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭