Test - Driven Development By Example 测试驱动开发 (读书笔记)

来源:互联网 发布:js 贪吃蛇游戏源码 编辑:程序博客网 时间:2024/05/18 21:48

一. TDD的目标: 代码整洁可用

二.开发过程中所经历的阶段:

  1.不可运行-------写一个不能工作的测试程序,一开始这个程序甚至不能编译

  2.可运行---------尽快让这个测试程序工作,为此可以在程序中使用一些不合情理的方法

  3.重构---------消除在让测试程序工作的过程中产生的重复设计,优化设计结构

不可运行/可运行/重构 ----- 这就是测试驱动开发的口号

三.具体开发步骤:

1.列清单,功能点

2.

 

25.测试驱动开发模式

1) 测试最好相互独立: 几个测试失败最好对应的是不同的问题,且独立意味着不依赖于顺序。

2) 写测试时先写断言,然后根据断言往回写,这样会写出一个测试

3) 不要用一个常量来表达多重意思,尽量用真实数据

 

28.可运行模式

1) 测试不能通过时返回一个常量,一旦测试能运行起来,那个常量逐渐转换成用变量表示的表达式

2) 消除重复(如果不知道怎么抽象,就用三角法,两个或两个以上对于相同功能的测试用例)

 

29.xUnit模式

1) 几个测试都需要的对象,放在setUp方法里

2) 方法名: test + 测试缘由

3) 测试异常: 执行完了以后 fail()

 

30.设计模式:

1) 出现空值,返回一个什么也不做的新对象

2)

 

三.重构

1. 抽象:一点一点减少它们之间的差异,只有他们完全一致的时候再去统一

2.隔离变化: 对修改的部分进行隔离

3.提取方法: 便于理解复杂方法

   1) 提取区域内没有向在本区域外临时变量赋值的语句

   2) 对于在新方法中用到的原方法的每个临时变量或参数,都为新方法增加一个参数

4.方法对象: 对于某方法内有大量临时变量和参数的情况

  1) 使用与方法一样的参数来创建一个对象

  2) 把局部变量变成对象的实例变量

  3) 创建一个方法,使内容与原来方法内容相同

  4) new该对象实例并调用该方法

原创粉丝点击