测试驱动开发培训讲义.pptVIP

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
测试驱动开发 主题 测试驱动开发的基本概念 测试驱动的基本流程 测试驱动的所采用的技术及工具 DEMO 测试驱动开发的基本概念 为什么会出现测试驱动开发 什么是测试驱动 测试驱动所要达到的目标 测试驱动蕴含的哲学原理 将复杂事情简单化 让注意力关注在单一的事物上 分解 Hardcode 重构 为什么会出现TDD—程序员 当有一个新的开发任务时,往往第一个念头就是如何去实现它呢? “应该是这么做的吧,嗯,差不多就是这样的” 。 抓起任务就开始编码,一边写,一边修改和设计。 时间这么紧!我还是先实现任务吧,然后再好好测试。 还是不工作,时间不多了。不管了,还是先做个实现,以后再来整理代码吧。 我已经单步调试了好几次了,遍历了所有可能的分支,应该不会有问题了,提交,今天可以好好休息一下了 要不要写单元测试把我刚才单步调试的步骤写下来啊?那样是很好,但工作量很大哦 这样的情况要作自动测试太复杂了。还是手工测试一下吧。 程序员应该做些有创意的东西,这样才有趣啊 测试是QA的事,我为什么要做啊,我做了他们干什么啊 为什么会出现TDD—程序员 奇怪了,怎么代码跟开发文档上有这么大的差别啊? 这段代码究竟想表达什么意思? 代码现在越来越乱了,我都不敢修改代码了,修改了这个地方,天晓得会引起多少别的地方出错啊! 这个地方的代码怎么好象在那个地方看到过啊?这个程序里怎么会有这么多的重复代码呢? 为什么会出现TDD—QA 开发部在干什么啊,BUG怎么这么多,他们有没有自己先测试一下啊 这下好了,让他们修改了一个BUG,现在一下子来了这么多的BUG 他们到底在搞什么啊,有没有从用户的角度考虑啊,我新增一个采购订单,订单项竟然可以输入负数。 有办法可以解决上面的矛盾吗? XP中的测试 Unit Test(基本不提倡,只对特别功能) Functional Test( Acceptance Test ) Regression Test Nightly Test Integration Test Stress Test 所有的测试都应该独立地自动的运行 什么是Function Test 什么是Regression Test “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)。 Regression Test的基础是完整的自动单元测试和功能测试。 什么是Nightly Test Nightly Test就是每晚自动运行所有的Unit Test和Acceptance Test。 Nightly Test是XP中的Continuous Test的一个练习(Practice)。 Nightly Test可以准确的反映项目开发的进度和质量。 Nightly Test Nightly Test是软件开发中一个保证开发之质量的最有效的方法,也 是衡量软件之质量和开发效率的最好的指标。 Nightly Test就是每天工作结束,所有的代码都Check in到Source Control后,自动运行所有的Unit Test和Function Test。测试的结果 应该自动分发给开发人员和管理层。 两个指标数值: 测试例子的通过率 – 单元测试必须是100%通过。Functional Test 应该按计划的通过。 单元测试的覆盖率 – 表明有多少Class被测试过和测试的完善程度。 测试优先的编程 在写任何代码之前,先写它的Function Test。 “Never write a line of functional code without a broken test case” Kent Beck Test-First Programming是一种测试技术吗? Test-First Programming首先是一种分析方法。它迫使程序员仔细思考要做什么和不要做什么(而不是如何具体的实现)。特别是各种例外的情况,并用程序语言正式的写下来。这就好像在程序员的任务和程序员之间签订了一个清晰的正式合同。 Test-First Programming是一种设计方法。Function Test测试

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档