盒子
盒子
文章目录
  1. 测试驱动开发(TDD)
  2. 传统开发模式与TDD开发模式:
  3. 定义:
  4. 做法:
  5. 优缺点:

TDD

测试驱动开发(TDD)

传统开发模式与TDD开发模式:

传统开发模式流程:
项目代码开发 -> 编写测试用例 –> 运行测试用例 -> 修复代码BUG
TDD开发模式流程:
编写测试用例 -> 运行测试用例 –> 编写项目代码 -> 运行测试用例 -> 重构代码

定义:

在编写任何产品代码之前,先写一个测试来表达期望的行为,此时测试应当会失败,因为功能还没有实现。然后编写实现来使测试通过。换句话说,“只为修复失败的测试而编写代码!”
TDD要求测试可以完全地自动化运行,通常会借助单元测试作为基础。

做法:

TDD循环分为三步:
先写一个失败的测试;
实现产品代码从而使测试变得通过;
在测试通过的保护之下对代码进行重构。

优缺点:

优点:
有助于设计简单清晰而易用的接口;
模块切分的足够小但是模块间保持极低的耦合;
肆无忌惮的重构;
测试代码是“活”的软件文档,它硬性规定了实现代码必须满足的需求,达不到就报错。

缺点:
测试驱动开发不可能让人立即具有设计出优美解决方案的能力,或者说是优秀的分析与解决问题的能力;
试驱动开发不能节省开发投入,也很少能够节省开发周期;
测试驱动开发不能杜绝所有的软件缺陷。

##参考链接:
http://liweibird.blog.51cto.com/631764/568391
http://www.cnblogs.com/wenjiang/p/3502890.html
http://www.cnblogs.com/blsong/p/4602001.html
http://www.jackyshen.com/2015/12/10/tdd-test-driven-development/

支持一下
扫一扫,支持freedom