测试驱动开发
最近又把《测试驱动开发》翻出来读了读,比上次读进去的多一些,读过之后还是有些感受。
首先,我觉得自动化的单元测试绝对必要。且不说一个开发团队开发的代码,就是我自己写的代码,过上一段时间之后,就完全忘了当时的想法。如果要修改的话,熟悉原来的代码就是一个非常耗时耗力的事情。而如果当时有自动化的单元测试代码,就可以在旧代码上不花或者少花力气,而直接投入到新的任务中去,只有当测试出错时,才需要去检查原因。
其次,对于书中的测试驱动开发方法,我觉得还是有点过于理想化了。照作者的想法,可以通过测试来推动和改进设计。首先并不需要急于设计,而是先写一个测试,再写一个简单的实现,再进一步测试,重构。再修改测试,进入下一个循环。我觉得这样进行开发,测试和设计之间关系太紧密,给我的感受是,不光要考虑设计本身,还要考虑测试的设计,感觉是在进行双倍的工作。
我个人还是倾向于比较简单的模式:按照传统方式进行设计,对其中的可测试点构造自动化测试条件。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
2009-10-29 Zegraph遇到的一个崩溃的问题