我知道单元测试很重要,可是我不知道为什么重要,所以有些问题请您指点。1 .单元测试是要把每个写的函数都要写个测试用例吗?如果有个函数sum,就是返回 a+b, 也要写吗?那岂不是很浪费时间?如果不是,那么单元测试要测试些什么单元呢?2. 说测试用例到最后可以积累,项目开发往后越往后越感觉到方便,这在什么地方可以体现出来?能否清您给个简单的例子描述一下nuit 单元测试在您的项目开发中的心得。它到底在什么地方解决您的哪些困难,在什么地方您感觉他特别方便。我现在感觉在 VS 中运行跟踪调试也没什么不好啊,为什么要用它呢?谢谢您
我一般用跟踪调试,或实现一个功能后干脆运行程序一遍,去试用它,发现它的问题。转载MSDN:
单元测试的主要目的是获取应用程序中可测试软件的最小片段,将其同代码的其余部分隔离开来,然后确定它的行为是否与预期的一样。分别测试了每个单元后将它们集成到模块中以测试模块之间的接口。单元测试已经证实了它的价值,因为在使用它的过程中识别了大部分缺陷。最常用的单元测试方法要求编写驱动程序和存根 (stub)。驱动程序模拟调用单元,而存根 (stub) 模拟被调用的单元。开发人员在此活动中的时间投入有时会导致单元测试降到更低的优先级,这几乎总是一个错误。即使驱动程序和存根 (stub) 花费时间和金钱,单元测试仍然提供了一些不容置疑的优点。它考虑了测试过程的自动化,降低了发现应用程序的更复杂片段中包含的错误的难度,并且通常会提高测试的覆盖范围,因为对每个单元都给予了关注。例如,如果您有两个单元,并认定将它们粘合在一起且最初作为集成单元来测试会更合算,那么错误可能会在不同的地方出现。 错误是否因单元 1 中的缺陷所引起?
错误是否因单元 2 中的缺陷所引起?
错误是否因这两个单元中的缺陷共同引起?
错误是否因这两个单元之间的接口中的缺陷所引起?
错误是否因测试中的缺陷所引起?
在集成模块中查找错误比首先隔离两个单元,测试每一个,然后集成它们并测试整体要复杂得多。驱动程序和存根 (stub) 可以重用,因此不用额外编写大量的测试代码,就可以经常重新测试开发周期内不断发生的更改。这实际上降低了基于每个用户编写驱动程序和存根 (stub) 的成本,并且可以更好地控制重新测试的成本。
> To 3tzjq(永不言弃):谢谢,那就是说,如果如果我的程序可以很方便的运行起来调试,是不是可以少用或者不用unit tesing.
很少看见思归说中文。我还以为没输入法呢,呵呵
>而是为设计写测试代码。很深澳啊。 能否详细说说。