众所周知,在团队中进行代码审查(CodeReview)可以提升代码质量,分享项目知识、明确责任,Zui终达到构建更好的软件、更好的团队。
代码审核及其重要,一般来说每周都要做一次代码审核。代码审核有利于你跟踪项目进展情况,我们能真实地看到手下的人进展如何,并且更早发现他们是否误入歧途。有时候,手下人会说“完成得差不多了!”,你去看代码时发现什么都没有或者只是一堆垃圾,诸如此类,总之离完成还很遥远。在管理中,这种情况是Zui让人讨厌的,我认为代码审查是避免这种麻烦的途径。
要认识单元测试,要明白什么是“单元(Unit)”。所谓“单元”指的是代码调用的单位,实际上指的是一个功能块(Function)或者方法(Method)。单元测试指的就是对这些代码调用单元的测试。
单元测试是一种白盒测试,就是必须要对单元的代码细节很清楚才能做的测试。单元测试的编写和执行都是由软件工程师来做的。相对于单元测试,还有集成测试。集成测试基本都是黑盒测试,主要是由测试人员根据软件的功能手册来进行测试,需要有专门的测试环境配合。集成测试又分功能测试、回归测试等。
需要单元测试的代码实际上是开发人员自己写的逻辑,测试逻辑所依赖的环境是否正常不是单元测试的目的。在环境访问代码中引入逻辑,只会让逻辑更难测试,导致逻辑代码无法进行单元测试。可单元测试的代码,才能够采用单元测试。判断可测试的代码还有一个方法,就是看这个方法能否用一个main函数直接运行,如果可以的话就是可单元测试的代码。可测试的代码还有另一个特征,就是该方法单元的参数,开发人员可以自由模拟,不需要依赖外部环境。