什么是测试驱动开发(TDD)


Posted in 面试题 onFebruary 15, 2012
测试驱动开发(Test-Driven Development)起源于极限编程(XP)开发, 它提倡测试先行,就是先写测试,再做开发。测试先行实践重视单元测试(Unit Testing),强调程序员除了编写代码之外,还应该编写单元测试代码。在开发的顺序上,它改变以往先编写代码,再编写测试的过程,而采用先编写测 试,再编写代码来满足测试的方法。这种方法在实际中能够起到非常好的效果,使得测试工作不仅仅是单纯的测试,而成为设计的一部分。
测试驱动开发是敏捷开发的最重要的部分。该方法主要是先根据客户的需求编写测试程序,然后再编码使其通过测试。在敏捷开发实施中,开发人员主要从两个方面去理解测试驱动开发。
在测试的辅助下,快速实现客户需求的功能。通过编写测试用例,对客户需求的功能进行分解,并进行系统设计。我们发现从使用角度对代码的设计通常更符合后期开发的需求。可测试的要求,对代码的内聚性的提高和复用都非常有益。
在测试的保护下,不断重构代码,提高代码的重用性,从而提高软件产品的质量。

Tags in this post...

面试题 相关文章推荐
为什么要优先使用同步代码块而不是同步方法?
Jan 30 面试题
试述DBMS的主要功能
Nov 13 面试题
一套SQL笔试题
Aug 14 面试题
ORACLE十问
Apr 20 面试题
写一个在SQL Server创建表的SQL语句
Mar 10 面试题
西安当代医院管理研究院笔试题
Dec 11 面试题
软件测试企业面试试卷
Jul 13 面试题
软件配置管理有什么好处
Apr 15 面试题
敏捷开发的主要原则都有哪些
Apr 26 面试题
北京振戎融通Java面试题
Sep 03 面试题
一道Delphi上机题
Jun 04 面试题
什么是ESB?请介绍一下ESB?
May 27 面试题
一份软件工程师的面试试题
Feb 01 #面试题
瀑布模型都有哪些优缺点
Jun 23 #面试题
常见的软件开发流程有哪些
Nov 14 #面试题
MIS软件工程师的面试题
Apr 22 #面试题
软件测试工程师面试问题精选
Oct 28 #面试题
配置管理计划的主要内容有哪些
Jun 20 #面试题
中间件分为哪几类
Sep 18 #面试题
You might like
一周学会PHP(视频)Http下载
2006/12/12 PHP
PHP输出缓冲控制Output Control系列函数详解
2015/07/02 PHP
php接口隔离原则实例分析
2019/11/11 PHP
计算世界完全对称日的js代码,粗糙版
2011/11/04 Javascript
Jquery 选中表格一列并对表格排序实现原理
2012/12/15 Javascript
jquery动态加载select下拉框示例代码
2013/12/10 Javascript
JS实现仿苹果底部任务栏菜单效果代码
2015/08/28 Javascript
jquery实现全屏滚动
2015/12/28 Javascript
JS从数组中随机取出几个数组元素的方法
2016/08/02 Javascript
Vue.js移动端左滑删除组件的实现代码
2017/09/08 Javascript
import与export在node.js中的使用详解
2017/09/28 Javascript
JS实现的找零张数最小问题示例
2017/11/28 Javascript
从源码里了解vue中的nextTick的使用
2018/11/22 Javascript
JS代码优化的8点建议
2020/02/04 Javascript
vue项目在webpack2实现移动端字体自适配功能
2020/06/02 Javascript
使用next.js开发网址缩短服务的方法
2020/06/17 Javascript
[02:56]DOTA2亚洲邀请赛 VG出场战队巡礼
2015/02/07 DOTA
Python使用smtp和pop简单收发邮件完整实例
2018/01/09 Python
python实现人人自动回复、抢沙发功能
2018/06/08 Python
浅谈django三种缓存模式的使用及注意点
2018/09/30 Python
python 实现批量xls文件转csv文件的方法
2018/10/23 Python
python将邻接矩阵输出成图的实现
2019/11/21 Python
Python生成器常见问题及解决方案
2020/03/21 Python
解决selenium+Headless Chrome实现不弹出浏览器自动化登录的问题
2021/01/09 Python
Python页面加载的等待方式总结
2021/02/28 Python
分享全球十款超强HTML5开发工具
2014/05/14 HTML / CSS
党校学习思想汇报
2014/01/06 职场文书
生产厂长岗位职责
2014/02/21 职场文书
竞选班长自荐书范文
2014/03/09 职场文书
房屋鉴定委托书范本
2014/09/23 职场文书
纪委书记群众路线整改措施思想汇报
2014/10/09 职场文书
维稳承诺书
2015/01/20 职场文书
学术会议通知范文
2015/04/15 职场文书
2015年共青团工作总结
2015/05/15 职场文书
劳动争议仲裁代理词
2015/05/25 职场文书
导游词之云南-元阳梯田
2019/10/08 职场文书