第三章的主题是代码检查、走查和评审。
观点
- 研读程序代码是测试工作的一部分。
- 错误发现的越早,改正错误的成本越低。正确改正错误的可能性也越大。
- 代码检查/走查与基于计算机的测试是互补的。缺少任何一种,错误检查的效率都会降低。
- 对着大家逐条解释程序这种简单的做法看来是一个非常有效的错误检查方法。
- 代码检查的目标是发现程序中的错误,进而改进软件的质量。因此大多数人建议应对代码检查的结果进行保密。
- 软件中存在的错误不应该被视为编写程序的人员自身的弱点。相反,这些错误应被看作是伴随着软件开发的艰难性所固有的。
概念
- 代码检查
代码检查是以组为单位阅读代码,是一些列规程和错误检查技术的集合。
一个代码检查小组通常由4人组成,一人发挥协调作用。协调人应该是个合格的程序员,但不是该程序的编码人员。每个参与者都将注意力集中于查找错误而不是修正错误。代码检查会议的理想时间应该在90-120分钟之间,每小时大约阅读150行代码。对大型软件的检查应该安排多个代码检查会议同时进行。 - 代码走查
代码走查与代码检查的组织放松和代码检查十分类似。建议的代码走查会议的组成成员为:一位极富经验的程序员;一位程序设计语言专家;一位程序员新手;最终将维护程序的人员;一位来自于其他不同项目的人员;一位来自该软件编程小组的程序员。代码走查需要一些测试用例,每个用例都在人民脑中进行推演。把测试数据沿着程序的逻辑结构走一遍。测试用例的作用是质疑程序员逻辑思路及其设想的手段。 - 同行评分
同行评分市一中依据程序整体质量、可维护性、可扩展性、易用性和清晰性对匿名程序进行评价的技术。这项技术的目的是为程序员提供自我评价的手段。
辨析
代码检查与走查的相似点
- 代码检查和走查都要求人民组成一个小组来阅读或直观检查特定的程序。
- 参加者需要完成一些准备工作。
- 目标是找出错误但不用找出改正错误的方法。
代码检查的优点
- 一旦找出错误就能在代码中精确定位,降低了调试成本
- 代码走查更有效,因为在实施过程中除了软件编写者本人还有其他人参与进来。
- 程序员会得到编程风格、算法选择及编程技术等方面的反馈。
- 其他参与者也可以通过接触其他程序员的错误和编程风格而同样受益匪浅。
- 代码检查是早期发现程序中最易出错部分的方法之一。有助于在基于计算机的测试过程中将更多的注意力集中在这些地方。
总结
我觉得同行评分这个挺有意思的,以后有机会想自己体验一下试一试。