在第二章的学习之中,了解到第二章主要讲:单元测试,回归测试,效能分析,个人软件开发流程(PSP)
1.单元测试
软件是由多人合作完成的,不同的工作有相互依赖的关系。单元测试应该准确,快速地保证程序基本模块的正确性。
单元测试好坏的标准如下:
1.单元测试应该在最低功能/参数上验证程序的正确性。
2.单元测试必须由最熟悉代码的人(程序的作者)来写
3.单元测试后,机器状态保持不变
4.单元测试要快(一个测试的运行时间是几秒钟,而不是几分钟)
5.单元测试应该产生可重复、一致的结果
6.独立性——单元测试的运行/通过/失败不依赖于别的测试,可以人为构造数据,以保持单元测试的独立性
7.单元测试应该覆盖所有代码路径(注意点:100%的代码覆盖率并不等同于100%的正确性!)
8.单元测试应该集成到自动测试的框架中
9.单元测试必须和产品代码一起保存和维护
2.回归测试
回归测试的基础是单元测试。在软件,对于回归测试中的“回归”,我们可以理解为“回归到以前不正常的状态”。
回归测试最好应该是自动化的,这样可以对每一个构建快速运行所有回归测试,保证尽早发现问题。
3.效能分析工具
可以选择两种分析方法:1.抽样 2.代码注入
抽样:就是当程序运行的时候,时不时看一看这个程序运行在哪一个函数内,并记录下来。
代码注入: 将检测的代码加入到每一个函数中,这程序的一举一动都被记录在案,程序的各个效能数据都可以被精确地测量。
4.个人开发流程
1) 计划(估计这个任务需要多少时间)
2) 开发(包括 分析需求,生成设计文档,设计复审(和同事审核设计文档),代码规范(为目前的开发定制合适的规范),具体设计,具体编码,代码复审,测试(包括自测,修改代码,提交修改))
3) 记录用时
4) 测试报告
5) 计算工作量
6) 事后总结
7) 提出过程改进计划