出版时间:2013-5 出版社:人民邮电出版社 作者:Garther
Tag标签:无
前言
Kent Beck序本书介绍验收测试驱动开发(Acceptance Test-Driven Development,ATDD)的方式,与使用ATDD开发软件的过程,有着奇妙的对应关系。通过选择特定的程序行为实例引出系统的正确行为是一门艺术,通过挑选特定的编程实例让读者更好地学习某种编程技术(如ATDD)也是一门艺术。Markus选取和呈现实例方面的能力的确令人钦佩。要阅读本书,你就需要阅读代码。如果你跟得上,你就有机会完成掌握ATDD所必需的思维转变。这种转变简单来说,就是很快从“这是我需要的一个特性”转变为“我们如何去测试它呢?这是个例子。”阅读这些例子,你就会反复在不同的上下文环境中看到这种转变具体是什么样子。我之所以喜欢这种以代码为中心的表述方式,是因为我充分信任读者的学习能力。这不是那种印在薄薄的技术宣传包装纸上的“测试Web应用的12个简单原则”,一放到残酷的现实中就会大打折扣。在这里你能看到在具体上下文中所做的具体决定。这些决定你可能会(如果你想从书中获得最大的收获,你一定会)不同意,争辨,并作出自己的决定。本书的后半部分给出了一些普遍的结论,总结了在工作中使用“实例”的一些原则。如果你是那种熟悉了普遍概念之后学东西会更有效率的人,那么从那里开始阅读是个不错的主意。但是,你能从本书学到多少,直接取决于你愿意花多少精力研究那些实例。就像我曾说过的,TDD(测试驱动开发)的一个弱点是,它可能会退化为一种用来满足开发人员需求的编程技能。某些开发人员从更宽泛的角度来看待TDD,轻易在他们测试的不同抽象级别间跳跃。然而在ATDD中不存在歧义,这是一种加强与非编程人员沟通的技术。我们之间良好的协作关系,以及作为这种关系基础的沟通,能够使软件开发更有效率。采用ATDD是向着沟通更清晰这个目标迈进的重要一步,而此书是一本全面又平易近人的入门读物。
内容概要
《验收测试驱动开发:ATDD实例详解》是第一本成功实施和运用ATDD(验收测试驱动开发)的入门级的实践指南。书中通过两个端到端的案例,演示了如何使用不同的框架和语言来实施ATDD。每一个案例研究里都涉及了大量的实际产出,包括测试自动化类、步骤定义和完整的案例实现。这些实际的例子,形象地说明了ATDD的基本原则,展示了ATDD是怎样融入开发流程的,给出了来自作者的广泛经验的重要提示,也指出了要避免哪些危险的陷阱。
通过《验收测试驱动开发:ATDD实例详解》,读者可以掌握成功实施ATDD的思维过程。通过Cucumber使用ATDD来描述业务人员能理解的软件,使用ATDD工具测试网页;通过FitNesse这种基于wiki的验收测试框架把ATDD带到Java中;通过全新的讨论会形式来协作地捕捉软件需求,实现更加用户友好的、协作的测试自动化,使测试更整洁;倾听测试结果,并以价值驱动测试重构。
《验收测试驱动开发:ATDD实例详解》非常适合测试人员、分析师、开发人员或项目经理阅读。
作者简介
作者:(德国)Markus Gärtner 译者:张绍鹏 冯上张绍鹏,百度项目管理部架构师、敏捷教练,长期关注敏捷与精益创业,在百度指导过推荐与个性化团队、百度新首页、百度账号系统、百度知道和其他垂搜团队;担任LeanStartupMachine导师;曾任诺西VoIP北京研发总监;7年C/C /Java程序员;第一份工作是在贝尔实验室做5ESS开发。冯上,百度项目管理部敏捷教练,为百度培训学院提供重构和TDD培训,同时负责百度编码规范等工作。指导了百度搜索团队的敏捷实践和持续集成。2006年毕业于北京大学信息科学技术学院,之后一直从事软件开发(C++),多年SCRUM经验,XP的积极实践者和传播者。
书籍目录
第一部分 机场停车场第1章 停车费计算器讨论会1.1 代客泊车1.2 临时停车1.3 经济停车和长期停车1.4 基本实例1.5 总结第2章 代客泊车的测试自动化2.1 第一个测试用例2.2 结对完成第一个测试2.2.1 初始化2.2.2 检查结果2.3 表格化测试2.4 总结第3章 其余的停车场实例的自动化3.1 临时停车3.2 经济停车3.3 总结第4章 期望与协作4.1 需求讨论会4.2 主观期望的思维方式4.3 协作4.4 总结第二部分 交通信号灯软件系统第5章 开始5.1 交通信号灯5.2 FitNesse5.3 支持代码5.4 总结第6章 信号灯状态6.1 状态需求6.2 第一个测试6.3 深入代码6.4 重构6.4.1 包6.4.2 LightState枚举6.4.3 编辑LightState6.5 总结第7章 第一个路口7.1 控制器的需求7.2 驱动控制器的实现7.3 总结第8章 发现和探索8.1 发现领域8.2 驱动产品代码8.3 测试你的粘合代码8.4 粘合代码的价值8.5 总结第三部分 验收测试驱动开发的原则第9章 使用实例9.1 使用合适的格式9.1.1 行为驱动开发9.1.2 表格格式9.1.3 关键字驱动的自动化9.1.4 粘合代码和支持代码9.1.5 正确的格式9.2 细化实例9.2.1 领域测试9.2.2 边界值9.2.3 配对测试9.3 裁减实例9.4 考虑缺失9.5 总结第10章 协作确定需求10.1 见识“三的力量”10.2 举办讨论会10.2.1 参加者10.2.2 讨论会的目标10.2.3 频率与时长10.3 捕捉需求10.4 总结第11章 基于文本的自动化11.1 使用友好的自动化11.2 自动化上的协作11.3 发现领域11.4 总结第12章 整洁的测试12.1 测试自动化的开发12.2 倾听测试的声音12.3 重构测试12.3.1 提取变量12.3.2 提取关键字12.4 总结第13章 成功运用ATDD附录A CucumberA.1 特性文件A.2 步骤定义A.3 产品代码附录B FitNesseB.1 Wiki结构B.2 SLiM表格B.3 支持代码附录C Robot FrameworkC.1 段落C.2 库代码
编辑推荐
《验收测试驱动开发:ATDD实例详解》是第一本成功实施和应用ATDD的入门实践操作指南!
名人推荐
“Markus Gärtner是我的启蒙老师,他太棒了,他的书太精彩了,所以一定要去买他的书!他很好地解释了ATDD的结构和目标,这本书值得你反复研读。”——Michael Larsen (San Francisco, CA United States)“如果你对ATDD、BDD、规格范例、敏捷验收测试和故事测试感兴趣,这本书将是一个好的开始。这本书分为三个部分,第一部分建立了一个在线的停车费用计算器;第二部分建立了一个交通信号灯软件系统;第三部分是验收测试驱动开发(ATDD)的原则。除此之外,这本书还包括Cucumber、FitNesse和Robot框架等工具。”——T. Anderson (PA USA)“这是一本很好的ATDD新手入门指南。”——Vladislav Gangan (Chişinău, Moldova)
图书封面
图书标签Tags
无
评论、评分、阅读与下载