|Junit4入门之什么是TDD测试驱动开发?

Junit4入门之什么是TDD测试驱动开发?
本章我们说明一种新的技术:TDD(测试驱动开发Test-Driven Development) , 没多少人知道它是什么含义 , 但单元测试就是实现它的一种方式 。
本章属于Junit单元测试学习之路上的附加知识 , 可选择性跳过 。
它并非一种技术 , 而是一种开发方式 , 在敏捷开发中较为常用 。 它的核心是在打代码前先写测试用例测试代码 , 写好测试代码后 , 才反过来写代码 , 让代码能够满足测试用例 。
**百科:TDD是测试驱动开发(Test-Driven Development)**的英文简称 , 是敏捷开发的一种核心的技术理论 , 也是一种设计思路 。 TDD的原理是在开发功能代码之前 , 先编写单元测试UT的用例代码 , 通过测试代码来确定需要编写什么样子的产品代码 。
简单来说 , 开发的整体流程如下:
1) 分析需求 , 把需求拆分为具体的任务 。
2) 从任务列表中取出一个任务 , 并对其编写测试用例 。
3) 由于没有实际的功能代码 , 测试代码基本不可能通过(红) 。
4) 编写开发对应的需求功能 , 尽快的让测试代码通过测试(绿) 。
5) 对代码进行重构 , 并保证测试通过(重构) 。
6) 重复以上步骤 。
TDD的好处我觉得也很明显 , 它绝对可以更好的帮助我们理解需求 , 通过TDD , 我们首先是站在测试或用户的角度审视产品功能 , 彻底的理解这次的需求 。 然后测试用例写好了后 , 我们在对代码重构和改动时 , 可以马上看到是否有影响到核心功能 , 并加以改动 。
这种开发方式 , 在我看来是比较特别的 , 代码都还没有 , 就先写测试用例测试代码 , 而且我们是开发又不是测试 , 怎么连测试用例都出来了?其实不管我们是不是测试 , 我们写的代码都是为了实现特定的功能 , 最后给用户使用的 , 而我们自己就是这个功能的第一个用户 。 你平时在使用APP或网页时 , 碰到有问题影响体验的地方是不是会很暴躁?在打单机游戏的时候是不是会找漏洞找攻略?只是现在我们需要将这种心态放在我们自己写的代码身上而已 , 当你拿给别人用的时候 , 至少要保证你自己作为第一个用户已经发现不了问题了 。
总结:
至此 , TDD测试驱动开发的基础学习就完成了 , 想学习后续更复杂的内容 , 可以关注我后续的文章 , 都已经发布在我的个人主页了 。
【|Junit4入门之什么是TDD测试驱动开发?】这个系列会连续更新很多章节 , 目的是彻底教会大家如何掌握JUnit4 , 还希望大家多多支持 , 点赞评论一下 。
- 炸锅|酷暑之下,莫让这些谣言再增“热”度
- 安全测试之渗透测试
- Flyme|“国产系统之光”Flyme迎来十周年,纪念海报上线引发热议
- 新发现恐龙可能在灾难性的太空岩石撞击地球之前就已经灭绝了
- 为何人类所到之处,地球会“寸草不生”?这符合进化论的原理吗?
- 联发科天玑9000+之王浮出水面,极有可能又是vivo
- 水洞中发现玛雅人残骸,可能并没有消失,或揭开玛雅消失之谜!
- 马云|马云自己\打脸\之前所说的,如今现身西班牙,开12亿游艇!
- 中兴|使用中兴Axon40UItra之后,明白屏幕完美,却在市场上遇冷的原因
- 旗舰机|旗舰机的更新对于任何一家厂商都没有难度,但入门级,还得看绿厂
