重复:https://stackoverflow.com/questions/135651/learning-unit-testing
我正在尝试为我的研究小组开发一些软件来分析和绘制实验数据。我想把它做到没有错误的地方。这会是单元测试的情况吗?如果是这样,您能给我指出一些关于单元测试的好参考吗?
几乎任何代码都适合进行单元测试;它将帮助您记录代码的意图,并证明您的代码按预期工作。在将代码发布给团队的其他成员之前,它肯定会帮助您找到错误。您没有说明您正在使用什么平台,因此我无法推荐测试框架,但我可以推荐 Kent Beck 的出色的 测试驱动开发:通过示例 作为一个良好的通用起点。
根据我的经验,单元测试对于任何与 UI 无关的功能(例如“如果是负值,则显示为红色”)来说都是一个好主意,可以帮助您尽早发现错误。因此,我建议尽可能编写单元测试(并让它们自动运行,例如每晚甚至在每次构建之后运行,以查看某些新代码是否破坏了任何内容)。
那么您的应用程序需要分析数据吗?嗯,听起来可以写一个测试。
例如如果您的数据在星期三总是得分 5.25。
你可以写一个测试。
void CheckScoreOnWeds()
{
Assert.AreEqual( 5.25, DataAnalyzer.CalcScore(Day.Wednesday));
}
然后写你的课程
class DataAnalyzer
{
public double CalcScore( DayOfWeek Day)
{
//complex stuff
return 5.25
}
}
你有一个单元测试。