公司的没有单元测试的要求,也没有单元测试的相关规范。基本都是随机测试,随便写点测试代码,也没有维护过测试代码,提交版本测试代码也就扔了。
开始认为单元测试费力不讨好,认为小的功能不需要这玩意,随着做开发时间变长,才觉得这玩意很有必要。写之前先总结下我理解的单元测试。
一、必要性
1)开发人员能够对代码设思考,写出更易读,结构性更好代码
不是所有的代码都可以很优雅进行单元测试的。单元测试要求代码有较好的内聚和不同功能的解耦,要求对类设计更加面向对象,要求函数功能清晰,命名参数设计合理。所以在开发人员写代码前(或者写代码后)对代码进行更高要求的设计(或重构)。从而简洁的提高了代码的质量与可读性。
2)维护人员能够更容易理解代码
单元测试也是对如何使用代码的一种说明,换句话说,别人在使用的时候如果不知道代码是“解决什么问题”,那么可以先读读单元测试。
3)能够回归测试
不用每次改动一行代码就忧心忡忡想着代码会挂掉么,跑一遍单元测试,就踏实很多。
4)验证代码逻辑
这也是单元测试的目的,也是曾经我理解的单元测试。
上面是目前体会到的必要性,其实还有别的作用,从设计、开发进度检查、维护等各个角度单元测试都有其作用。引用一句别人文章的话“单元测试的普遍接受,已经成为过去5~7年里软件开发领域里最大的进步之一!”。下面这篇文章有更深入的解释。
《我同情那些不写单元测试的傻瓜》
http://blog.csdn.net/