TDD

2019-03-06  本文已影响0人  air_b10f

TDD是测试驱动开发(Test-Driven Development)的英文简称,是敏捷开发中的一项核心实践和技术,也是一种设计方法论。TDD的原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。TDD虽是敏捷方法的核心实践,但不只适用于XP(Extreme Programming),同样可以适用于其他开发方法和过程。

简之:先用UML等工具设计出所有的类(空的,先没有实现),然后开发所有场景的测试用例,开始都是报错的,一个方法方法的写,最后达到所有的测试用例都不报错了。

单元测试与编程实现的次序调整(数学证明法),TDD达到接近于100%实现单元逻辑

TDD原则:(属性:独立测试、可测试性)

测试列表、测试驱动、先写断言、及时重构、小步前进

一、开发者在编程之前必须构思

1)开发什么-深度解读规格

A.结构化阅读法:函数要求阅读+测试用例要求阅读,善于使用思维导图工具MindMapper(XMind)

B.实例化阅读法:穷举取值-思路全面完整-MECE

分类-场景-逻辑-约束

C.行为化阅读法-形容词转化动词阅读-可评估-可实现,等价类划分法-对比方式-刺激响应

二、如何开发HOW

关键字+语法体系+标准类库

编程与维护关系-缺陷债务-离职-大量IF-Else

程序文件的代码量与维护难度系数正比-如MemCached

可维护性解决-大程序文件-分解若干小的程序文件(边界程序文件+控制程序文件+数据程序文件)

三、TDD内涵与本质

测试脚本持续更新

测试脚本执行保证重构质量

测试脚本与实现代码至少1:1

TDD&UnitTest增加工作量

敏捷方法-从舒适区拉到不舒适区-强制执行

新毕业大学生-惯性-影响未来参考者

编程文化

参考:

https://baike.baidu.com/item/TDD/9064369?fr=aladdin

上一篇下一篇

猜你喜欢

热点阅读