北大青鸟Java培训:单元测试的意义?
对于单元考内容不清楚的同学,宁夏电脑培训/建议可以参考这篇文章,详细讲解单元考的内容。
单元测试有很多误区:1)浪费时间太多。一旦编码完成,缺乏软件工程实践经验的开发人员就会迫不及待地开始软件集成,让实际系统开始工作。在这个发展步骤中,真正的进步被表面的进步所取代。
系统能正常工作的可能性很小,更多的时候是充满了各种bug。
这些bug被包含在独立的单元中,这些bug本身可能是琐碎的、无足轻重的,但是当软件被集成到一个系统中时,它们会增加额外的时间限制和成本。
事实上,进行一次完整的单元测试和编写一段代码所花费的精力大致相同。单元测试一旦完成,在保证手头组件稳定可靠的情况下,高效的软件集成才是真正的进步。
程序的可靠性对软件产品的质量有很大的影响。在大型软件公司中,每一行程序都可能被测试多次。
这说明大型软件公司对测试的重视。
2)软件开发人员不应该参与单元测试。单元测试往往是与编码同步进行的,每次完成一个模块都要进行单元测试。
在对每个模块进行单元测试时,我们不能忽视与其他模块的关系。为了模拟这种关系,我们需要辅助模块。所以单个测试人员进行单元测试,往往工作量大,周期长,成本巨大,结果事倍功半。
软件开发人员应该始终负责程序的单个单元的测试,以确保每个单元都能完成设计的功能。其实很多情况下,开发者也要进行集成测试。
3)我是一个很棒的程序员,不需要单元测试。如果我们真的擅长编程,有绝活,应该不会出错,但这只是神话。
编码不是一次就能通过的,必须经过各种测试,单元测试只是其中之一。
缺乏测试的程序代码可能包含许多bug。没有测试保护修改bug的程序员会造成更多的bug,忙于调试,没有时间测试。
这种循环往往导致项目的崩溃。
为了避免恶性循环,代码必须受到安全网的保护,任何时候的单元测试都是这个安全网。
4)无论如何,集成测试会捕捉到所有的bug。集成测试的目标是把通过单元测试的模块,构造出设计中描述的程序结构,通过测试发现接口相关的问题。
在测试的过程中,我们发现并提交了通过资格测试的软件。在测试过程中,出现了很多bug,一些严重的问题,甚至造成了崩溃,以至于我们无法测试其他功能,进行了错误的修改,并且在回归测试过程中发现了其他新的问题,导致测试工作难以开展。