永发信息网

什么是测试驱动开发?

答案:1  悬赏:10  手机版
解决时间 2021-06-04 22:41
什么是测试驱动开发?
最佳答案
一、什么是TDD

简单的说,即在写任何功能代码之前,先写它的测试代码。具体步骤:
·根据需要编写一个测试用例
·编写功能代码,以让刚才的测试用例通过
·逐步补充测试用例
·修改功能代码使新增的测试用例和原来的都通过
·重构,包括功能代码和测试用例


二、为什么使用TDD

提高代码质量。由于功能代码的高质量和完善的测试用例集,增强了开发者信心,从而赢得他人信任。

改进设计。TDD保证了功能代码的可测试性,降低了耦合度,改善组件对象模型,使设计在开发过程中逐步完善和改进。

为功能代码提供了良好的文档,并能维护代码和文档的同步。敏捷宣言主张:能够运行的软件胜过面面俱到的文档。测试用例集就是一份准备可靠,且能运行的文档。

在一定程度上可代替程序调试。当每个单元测试关注每一个具体功能时,问题被更早和更好地避免。另外调试是手动而不可重复,TDD的测试用例集则是自动可回归的。

有效的质量控制和项目管理。对管理者来说,通过单元测试每日构建的结果,每天都清楚的知道项目的质量和开发进度


三、TDD是测试,更是设计

当开始写单元测试代码时,其实也正在开发。在编写功能代码前,站在功能代码的使用者角度设计测试用例,运用针对接口编程等原则降低耦合度,改进设计。由此可见,TDD也是面向对象的分析,设计和开发方法。在贯彻TDD的开发过程中,对于每个类分别进行测试,对于每部分都进行简单设计,频繁重构,最终形成了一整套可运行的测试用例集,TDD体现持续改进的过程,是一种增量式设计。

TDD(Test Driven Development),是一种测试技术,更是一种设计方法。其重心不在Test,而在于Development,是一种以意图来驱动的软件开发方法——意图编程。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
飞信QQ和超级QQ可以同时点亮吗?
可以把自己的Q永远删掉吗?
问问商城的商品有每人限领取次数。那是永久的
4月10日的白羊座是个什么样的男人?
找点嗨点的英文歌!
晚上应该吃什么饭好呢?
真的越简单越好?
是谁铁岭的炫舞玩家?
监利县荆州天耀超市地址在哪,我要去那里
梦幻跑BB环可以打传说吗
3G手机打电话贵不贵、
豹纹守宫的价格!
求下 劲舞团里 有首爵士的 音乐 谁可以告诉我
给我家的松狮狗狗起个名字吧,一公一母
荷塘区株洲悦湖茶庄这个地址怎么能查询到,着
推荐资讯
组装电脑,用于PS和Flash,用什么配置?价格
梦幻诛仙一打开就重启要怎么办?
养狗有什么用
十大垃圾食品”是指什么?
头发少应该怎么办?
学俄语是不是,跟英语一样呀?
桌面变成这样了怎么变回来(如图)
说好要去看她(女朋友)可是有事去不了了,怎
迎着照样,我在进步
问道49PK水系。二力二敏好不好?
白色夹克羽绒服配灰色短裤还是配黑色的?
广州哪里有nba球衣订做的?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?