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


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

Tags in this post...

面试题 相关文章推荐
如何设定的weblogic的热启动模式(开发模式)与产品发布模式
Sep 08 面试题
Java面试题:请问一下代码输出是什么
May 27 面试题
凌阳科技股份有限公司C++程序员面试题笔试题
Nov 20 面试题
哪些情况下不应该使用索引
Jul 20 面试题
什么是静态路由?什么是动态路由?各自的特点是什么?
Sep 16 面试题
武汉某公司的C#笔试题面试题
Dec 25 面试题
linux面试题参考答案(1)
Jan 22 面试题
linux面试题参考答案(11)
Nov 26 面试题
中科软笔试题和面试题
Oct 07 面试题
长青弘远的面试题
Jun 09 面试题
什么是SCM(软件配置管理)
Aug 16 面试题
与C++相比,Java中的数组有什么不同
Mar 25 面试题
一份软件工程师的面试试题
Feb 01 #面试题
瀑布模型都有哪些优缺点
Jun 23 #面试题
常见的软件开发流程有哪些
Nov 14 #面试题
MIS软件工程师的面试题
Apr 22 #面试题
软件测试工程师面试问题精选
Oct 28 #面试题
配置管理计划的主要内容有哪些
Jun 20 #面试题
中间件分为哪几类
Sep 18 #面试题
You might like
php 在线打包_支持子目录
2008/06/28 PHP
解析mysql left( right ) join使用on与where筛选的差异
2013/06/18 PHP
PHP递归调用数组值并用其执行指定函数的方法
2015/04/01 PHP
PHP面向对象自动加载机制原理与用法分析
2016/10/14 PHP
php 中htmlentities导致中文无法查询问题
2018/09/10 PHP
jQuery 判断元素上是否绑定了事件
2009/10/28 Javascript
jQuery事件 delegate()使用方法介绍
2012/10/30 Javascript
一个非常全面的javascript URL解析函数和分段URL解析方法
2014/04/12 Javascript
深入理解JavaScript系列(29):设计模式之装饰者模式详解
2015/03/03 Javascript
javascript中的正则表达式使用详解
2015/08/30 Javascript
jQuery控制frames及frame页面JS的方法
2016/03/08 Javascript
Jquery实现select multiple左右添加和删除功能的简单实例
2016/05/26 Javascript
BootStrap Progressbar 实现大文件上传的进度条的实例代码
2016/06/27 Javascript
浅谈toLowerCase和toLocaleLowerCase的区别
2016/08/15 Javascript
JS点击缩略图整屏居中放大图片效果
2017/07/04 Javascript
基于javascript 显式转换与隐式转换(详解)
2017/12/15 Javascript
微信小程序自定义组件之可清除的input组件
2018/07/17 Javascript
angular1.x ui-route传参的三种写法小结
2018/08/31 Javascript
Angularjs实现数组随机排序的方法
2018/10/02 Javascript
编写一个javascript元循环求值器的方法
2020/04/14 Javascript
[01:06:07]2014 DOTA2国际邀请赛中国区预选赛5.21 DT VS CIS
2014/05/22 DOTA
Python中replace方法实例分析
2014/08/20 Python
python executemany的使用及注意事项
2017/03/13 Python
基于python中的TCP及UDP(详解)
2017/11/06 Python
python爬虫之xpath的基本使用详解
2018/04/18 Python
将python运行结果保存至本地文件中的示例讲解
2019/07/11 Python
python中dict()的高级用法实现
2019/11/13 Python
Python内置方法和属性应用:反射和单例(推荐)
2020/06/19 Python
Python3爬虫关于识别检验滑动验证码的实例
2020/07/30 Python
pandas参数设置的实用小技巧
2020/08/23 Python
美国最受欢迎的童装品牌之一:The Children’s Place
2016/07/23 全球购物
一站式跨境收款解决方案:Payoneer(派安盈)
2018/09/06 全球购物
上班离岗检讨书
2014/01/27 职场文书
2014年综合治理工作总结
2014/11/20 职场文书
荆州古城导游词
2015/02/06 职场文书
大学军训口号大全
2015/12/24 职场文书