2024/10月 读书笔记 - 2《构建之法》--- 第二章
第二章主要介绍了单元测试、回归测试、效能分析、个人软件开发流程(PSP),是讲个人技术和流程,具体的单元测试流程。
单元测试是用来解决如何使自己负责的模块功能定义尽量明确,模块内部的改变不会影响其他模块,而且模块的质量能得到稳定的,量化的保证。对于软件而言,单元测试是一个合格的软件必备的流程,就像运动员在比赛之前的热身,活动身体的每一块肌肉,检查它是否处于紧绷状态,确保比赛时的完全发挥。
一个好的单元测试是有标准的,即:
1.单元测试应该在最基本的功能上/参数上验证程序的正确性
2.单元测试必须由最熟悉代码的人(程序的作者)来写
3.单元测试过后,机器状态应保持不变
4.单元测试要快,要有效率
5.单元测试应该产生具有可重复性和一致性的结果
6.单元测试应具有独立性,单元测试的运行/通过/失败不依赖于别的测试,可以认为构造数据,以保持单元测试的独立性
7.单元测试应该覆盖所有代码路径
8.单元测试应该集成到自动测试的框架中
9.单元测试必须和产品代码一起保存和维护
对于第九点我们可以打一个形象的比方,即,单元测试就像杀毒软件的病毒库,病毒在更新的同时,杀毒软件的病毒库也要更新,否则电脑就会因中毒而陷入瘫痪。
回归测试的回归即指“回归到以前不正常的状态”。
回归测试最好自动化,以保证尽早发现问题,而单元测试是回归测试的基础;
效能分析方法有两种:抽样和代码注入。一般的做法是,先用抽样的方法找到效能瓶颈所在,然后对特定的模块用代码注入的方法进行详细分析;
工具引入:
效能分析工具
优化程序的运行速度是每一个程序员的梦想,VSTS为我们提供了方便的效能测试工具,我们可以清晰地看到每段语句被调用的次数。
“效能测试,分析,改进,再效能测试”的流程会让我们的编程水平逐步提升。
分类:
图书读后感
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署