测试驱动开发培训讲义.ppt
《测试驱动开发培训讲义.ppt》由会员分享,可在线阅读,更多相关《测试驱动开发培训讲义.ppt(35页珍藏版)》请在三一办公上搜索。
1、1,测试驱动开发,2,主题,测试驱动开发的基本概念测试驱动的基本流程测试驱动的所采用的技术及工具DEMO,3,测试驱动开发的基本概念,为什么会出现测试驱动开发什么是测试驱动测试驱动所要达到的目标,4,测试驱动蕴含的哲学原理,将复杂事情简单化让注意力关注在单一的事物上分解Hardcode重构,5,为什么会出现TDD程序员,当有一个新的开发任务时,往往第一个念头就是如何去实现它呢?“应该是这么做的吧,嗯,差不多就是这样的”。抓起任务就开始编码,一边写,一边修改和设计。时间这么紧!我还是先实现任务吧,然后再好好测试。还是不工作,时间不多了。不管了,还是先做个实现,以后再来整理代码吧。我已经单步调试了
2、好几次了,遍历了所有可能的分支,应该不会有问题了,提交,今天可以好好休息一下了要不要写单元测试把我刚才单步调试的步骤写下来啊?那样是很好,但工作量很大哦这样的情况要作自动测试太复杂了。还是手工测试一下吧。程序员应该做些有创意的东西,这样才有趣啊测试是QA的事,我为什么要做啊,我做了他们干什么啊,6,为什么会出现TDD程序员,奇怪了,怎么代码跟开发文档上有这么大的差别啊?这段代码究竟想表达什么意思?代码现在越来越乱了,我都不敢修改代码了,修改了这个地方,天晓得会引起多少别的地方出错啊!这个地方的代码怎么好象在那个地方看到过啊?这个程序里怎么会有这么多的重复代码呢?,7,为什么会出现TDDQA,开
3、发部在干什么啊,BUG怎么这么多,他们有没有自己先测试一下啊这下好了,让他们修改了一个BUG,现在一下子来了这么多的BUG他们到底在搞什么啊,有没有从用户的角度考虑啊,我新增一个采购订单,订单项竟然可以输入负数。,8,有办法可以解决上面的矛盾吗?,9,XP中的测试,Unit Test(基本不提倡,只对特别功能)Functional Test(Acceptance Test)Regression TestNightly TestIntegration TestStress Test所有的测试都应该独立地自动的运行,10,什么是Function Test,11,什么是Regression Test
4、,“Regression testing is the process of validating modified parts of the software and ensuring that no new errors are introduced into previously tested code.”一句话,Regresstion Test就是要重新测试所有的代码和功能。Regression Test和Development Test的不同在于Regression Test需要重用已经建立的所有的测试单元(Unit Test)和功能测试套件(Functional Test)。Reg
5、ression Test的基础是完整的自动单元测试和功能测试。,12,什么是Nightly Test,Nightly Test就是每晚自动运行所有的Unit Test和Acceptance Test。Nightly Test是XP中的Continuous Test的一个练习(Practice)。Nightly Test可以准确的反映项目开发的进度和质量。,13,Nightly Test,Nightly Test是软件开发中一个保证开发之质量的最有效的方法,也是衡量软件之质量和开发效率的最好的指标。Nightly Test就是每天工作结束,所有的代码都Check in到Source Contro
6、l后,自动运行所有的Unit Test和Function Test。测试的结果应该自动分发给开发人员和管理层。两个指标数值:测试例子的通过率 单元测试必须是100%通过。Functional Test 应该按计划的通过。单元测试的覆盖率 表明有多少Class被测试过和测试的完善程度。,14,测试优先的编程,在写任何代码之前,先写它的Function Test。“Never write a line of functional code without a broken test case”Kent BeckTest-First Programming是一种测试技术吗?Test-First Pr
7、ogramming首先是一种分析方法。它迫使程序员仔细思考要做什么和不要做什么(而不是如何具体的实现)。特别是各种例外的情况,并用程序语言正式的写下来。这就好像在程序员的任务和程序员之间签订了一个清晰的正式合同。Test-First Programming是一种设计方法。Function Test测试的是程序,而不是一个想法。程序员必须清晰的定义程序的验收条件才能写出它的Function Test。而这时程序员是不知道(也不需要知道)里面的具体逻辑是如何实现的。程序员只需要考虑Class的界面和功能(Responsibility)。啊,你在做OO设计了。Test-First Programmi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 测试 驱动 开发 培训 讲义

链接地址:https://www.31ppt.com/p-6308348.html