论坛首页 软件开发和项目管理版 TDD

测试如何驱动开发

浏览 16064 次
该帖已经被评为良好帖
作者 正文
时间:2007-09-30
qlqsh 写道
不好意思,新手,问一下啊。

LZ的Test2和Test3的区别在哪里?

听“抛出异常的爱”的解释似乎就是为了多测试一遍?

满足Test2的最简单的实现是直接return预期的结果
而同时满足Test2和Test3的最简单的实现,则是我真正想要的
   
0 请登录后投票
时间:2007-10-05
[quote=gigix]满足Test2的最简单的实现是直接return预期的结果
而同时满足Test2和Test3的最简单的实现,则是我真正想要的[/quote]

kert beck 说的三角法
   
0 请登录后投票
时间:2007-12-27
我理解gigix的三个Test,实际上是将文字语言描述的需求翻译成测试用例描述的需求。
Test 1 对应的文字描述是“要按单词来操作一个句子”。
Test 2 对应的文字描述是“按单词反转这个句子”。
Test 3 结合Test 2 描述是“按单词反转任意一个句子”。

如果在更粗的粒度上,Test 1 感觉是可有可无的,但Test 2和Test 3反到是必须的。
不知道我理解的对不对?
   
0 请登录后投票
时间:2007-12-27
没有test1叫扩大测试颗度
也是敏捷的一种实践
我是写的
不过总是被重构掉.....
因为.....这种东西多了就遮盖了逻辑.
不写eclipse就没办法生成简单的类.
我都是对着红线点击生成类或方法的.
   
0 请登录后投票
时间:2007-12-29
只能说是一个没有完成的测试驱动开发的Test Case
因为仅凭这个测试用例无法完成一个完整的功能的开发
   
0 请登录后投票
时间:18 分钟前
ozzzzzz 写道
gigix 写道
hostler 写道
ozzzzzz 写道
TDD的做法并不是要你在最早就准备好一个完整的测试系统,而是要你通过写准对需求的测试,也就是针对功能的测试,来因对性的完成你的代码。这是一个由需求,转换为针对测试,在因对的代码的过程。

那ozzzzzz怎么看gigix 关于testShouldSplitSentenceIntoWords这个测试?

这个测试就是所谓的“设计过程”
实际上照我真实的想法,我是不想写这个测试的,因为这个需求实在太简单了
不过为了说明这里确实有“设计”的存在……
我把一个大的问题分解成两个小的问题,先用测试驱动解决第一个,再用测试驱动解决第二个
就是这样

其实这里就引出一个问题,也就是TDD也有粒度问题,并且很多时候这个粒度问题并不比需求中粒度问题简单,需要我们小心控制。虽说XP要求我们小步快跑,但是这个小步也是有粒度要求的。


一般我都会抽象出接口来,对接口进行TDD测试!
   
0 请登录后投票
论坛首页 软件开发和项目管理版 TDD

跳转论坛:
JavaEye推荐
    快速回复 引用上一条消息 (Alt+S)