杂谈之单元测试的必要性
来源:互联网 发布:沈阳网络电玩城 编辑:程序博客网 时间:2024/06/04 18:02
作者:i_dovelemon
来源:CSDN
日期:2015/7/14
主题:Unit Test
转眼已经毕业,进入公司也有一段时间了。慢慢的,从最开始的一人单干,到现在需要和同事一起合作开发。其中给我最大的感慨就是,以前的我真是太单纯了。
在学校期间,开发项目的时候,我大部分都是从头到尾的重造项目,几乎没有过在以前项目的框架上继续编写的经验。进入公司后,项目都是在以前的基础上开发。对于我这个新人,特别是觉得:看别人的代码,不如自己重写的新人来说,这无疑是一个非常痛苦的事情,这也深刻的让我理解了,当初老师苦口婆心的告诉我要多多的和别人合作开发,真实开发的世界不是一人单干的。哎,不过现在了解到也不是很晚。
既然,已经明确了要在别人的遗留代码上做开发,那么我遇到的第一个问题就是如何处理这留了N多年的代码。对于阅读源码,我一向都比较喜欢,可以也仅仅只能做到大体框架了解,想要修改,想要扩展,甚至想要在上面做一点点的开发都是非常有难度的。为此,我就在网上搜索,遇到这样的情况,该如何是好?
搜索的路途中,慢慢的搜索到一本名为《修改代码的艺术》的一本书,简要的翻阅了这本书之后,我深深的被里面关于通过单元测试来扩展,重构遗留代码的想法所震撼,这也让我重新的了解我以前所不了解的单元测试的重要性。
在校期间,虽然有这单元测试的课程,但是对于我这种随心流的编程方式,根本就没有想过要给自己写的代码来编写测试,并且一直觉得单元测试是那些技术不好的只能做做测试的人做的,我们的任务比较高大上。
汗!!!现在觉得自己当初的想法是多么的幼稚。在了解到进行测试的好处之后,我自己试了下,发现就算一个非常简单的程序,光编写测试的时间就要耗费很长的时间。为此,我又搜索了“进行单元测试是否真的有必要”的话题。搜索到的条目让我一惊,似乎网上对此话题讨论的十分激烈,但是论点却不是说一方支持,一方不支持,而是都觉得写测试有好处,但是没有时间,没有那个精力,或者根本就没有那个习惯,觉得花费如此多的时间和得到的好处相比,有点不值当。我觉得这些人的说法,可能是自己真的没有深入的进行过测试方面的工作,所以留意起网上真真有过测试经验的开发人员,看到他们的叙说,觉得测试是一件要耗时很久,才有可能有回报的事,但是回报也并不是说十分微小,相比来说,对保证代码健壮性,bug的产生几率都能够有非常大的帮助。
那么,我是不是就应该认为那些有过测试的人就是对的了?理性的做法是自己试验一段时间,看看是否真的有效,不要轻信任何一方的说辞,只有真真发生在自己身上的事情,才会对自己有帮助,否则就算别人说的帮助有天大,但是到了自己这里就行不通的话,也是白搭!
接下来的日子里,我会慢慢了解软件测试方面的工作,试着在自己的项目开发中,融入测试的步骤,并且追踪自己的数据,看看是否真的值得投入?如果真的有效,那么我将会在工作中也保持这种工作方式,并且积极的推动这种方式在同事之间流行起来。
希望,这种全新的领域能够给我带来动力,也希望能够给自己的开发效率有所帮助!!!
- 杂谈之单元测试的必要性
- 单元测试的必要性
- 单元测试-必要性
- 从代码特性看单元测试的必要性
- Java 基础之线程池的必要性
- Java基础学习总结(118)——单元测试的必要性和重要性
- 论MPPS之必要性
- 单元测试培训系列:(一)单元测试概念以及必要性
- React学习之进阶ref的必要性(十三)
- C++之构造函数初始化列表存在的必要性
- React学习之进阶ref的必要性(十三)
- 提问的必要性和不必要性
- 开放源代码的必要性
- 版本管理的必要性
- Typelists的必要性
- 房地产市场调控的必要性
- 过程改进的必要性
- 代码阅读的必要性
- matlab的小知识点总结(一直补充)
- 【关键字】一些关键字用法总结
- LeetCode题解——Generate Parentheses
- Unity脚本函数的执行顺序
- POJ1144
- 杂谈之单元测试的必要性
- dp cf B. Maximum Submatrix 2
- hdu 2544 最短路
- 机房收费系统之初体验
- 【Spark】RDD机制实现模型
- 网桥代理大师
- VB编程概述
- 大数开根号(蓝桥杯-矩阵翻硬币)
- 【Spark】Spark容错机制