【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

书评:验收测试驱动开发实践指南

  • 2013-06-26
  • 本文字数:1211 字

    阅读完需:约 4 分钟

《验收测试驱动开发实践指南》一书作为介绍性使用指南,旨在为那些从零开始执行和运用验收测试驱动开发的团队提供指导。

在开头几页简单介绍之后,读者马上就会接触到大量对详细需求的讨论,在紧接着的第二章读者则会接触 cucumber scenarios 和 Ruby 测试自动化代码。作者以一个小型 web 程序为例说明了如何通过实例来促进共同理解,以及测试和开发如何在一起协作自动化测试。同时作者也在这一部分展示了其它好的实践,其中包括:在定义实例时关注业务重点(从而避免了规范中用户界面交互细节),还有采用测试驱动开发(TDD)原则(失败/ 成功/ 重构)来演进自动化测试代码。

书中的第二部分转而讨论了使用 Fitness 测试和 Java 自动化来执行一个从外到内的开发实践,从而驱动领域代码发现。该实践在如何避免还未对领域有充分理解前就直接开发产品代码,以及如何将 TDD 结合到 ATDD 上带来了一些启示。但遗憾的是,作者在 Fitness 测试框架繁琐细节上花费了太多的精力,以至于模糊了那些相关的见解,造成了更密集的阅读。

尽管该技术开始时可能会吸引开发人员或测试中的软件工程师,但也可能疏远那些非技术读者。任何团队中的功能测试工程师,需求分析师和产品负责人等人员都是成功执行验收测试驱动方法的关键。如果缺少他们,那该实践中的“验收”部分就毫无意义,只是一个假设而已。

本书的第二部分讨论了ATDD 的原则。尽管偶尔涉及书中第一部分的例子,但是对很多概念及想法,作者并没有提供任何实际案例。而且,对偶尔涉及到某些参考书上的例子,作者也假设读者都已经阅读过,从而在某种程度上削弱了它作为一本入门书籍的意图。

尽管如此,本书该部分确实在指出并总结多个与测试相关的,并且是成功敏捷测试人员必须掌握的实践上做出了不错的工作:从行为驱动测试(BDD)到测试设计技能,再到实例化需求实践,一直到清理测试代码和重构。

总的来说,《验收测试驱动开发实践指南》最终并没有真正为某一层次读者提供他们所需要的东西。因为对于有经验的读者来说,它过于简单;而对于新手来说,它又太过于宽泛而无法开始。读者最好进一步阅读相关书籍来明确自己对ATDD 需求及兴趣点。读者可以通过 GojkoAdzic 的《SpecificationByExample》来改进流程和减少开发中的费用和失败,通过 KentBeck 的经典书籍来理解测试驱动开发的主旨,实施 BDD using Cucumber ,或者只是理解什么是敏捷测试

关于本书作者

MarkusGärtner就职于德国汉堡的 it-agileGmbH 并担任敏捷测试,培训师,教练及顾问。他在 2011 年组织成立了德国敏捷测试探索讨论会(GermanAgileTestingandExploratoryworkshop),并在 2011 联合创办了周末测试的欧洲分会(EuropeanchapterofWeekendTesting)。

参考原文链接: BookReview:ATDDByExample


感谢陈菲对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2013-06-26 09:182429
用户头像

发布了 39 篇内容, 共 12.7 次阅读, 收获喜欢 2 次。

关注

评论

发布
暂无评论
发现更多内容

Defi元宇宙NFTweb3DAPP数藏swap合约区块链应用开发

西安链酷科技

区块链

我和极客时间的故事

法医

我和极客时间的故事

声音传送门|TinyEngine 低代码引擎使用建议收集

OpenTiny社区

开源 前端 低代码

8086汇编基础 db,dw,dd的实例

万里无云万里天

汇编语言

WorkPlus即时通讯办公软件,助力企业实现移动化办公

WorkPlus

私有化部署AI智能客服,解放企业成本,提升服务效率

WorkPlus

Bitquiz重塑Learn to Earn热潮,用户零投入让学习创造价值

股市老人

Python - 字典3

小万哥

Python 程序员 软件 后端 开发

低代码开发平台实现思路探索:JNPF

互联网工科生

低代码 JNPF

dao去中心化组织社群搭建、联盟链公链开发、钱包开发

西安链酷科技

公链开发

那些被裁员的芯片工程师们都怎么样了?

IC男奋斗史

职业规划 裁员 芯片 半导体 ChatGPT

QCN9274|DBDC WiFi 7 Network Card: Qualcomm's Innovative Solution

wallyslilly

qcn9274 qcn6274

Mate60系列超预期热潮背后,品牌如何抓住营销机遇?

最新动态

8086汇编基础 call word ptr示例

万里无云万里天

汇编语言

文心一言 VS 讯飞星火 VS chatgpt (114)-- 算法导论10.2 7题

福大大架构师每日一题

福大大架构师每日一题

TuGraph Analytics图计算快速上手之弱联通分量算法

TuGraphAnalytics

图计算 WCC 连通分量

8086汇编基础 byte ptr与word ptr实例

万里无云万里天

汇编语言

低代码技术这么香,怎么把它的开发特点发挥到极致?

陈橘又青

低代码 无代码开发 无代码 低代码平台 无代码平台

Apache IoTDB v1.2.2 发布|增加 flink-sql-connector、tsfile 文件级级联传输等功能

Apache IoTDB

8086汇编基础 8080,8088,8086,80286,80386的地址线,数据线宽度

万里无云万里天

汇编语言

8086汇编基础 A,a的ASCII码(十六进制)

万里无云万里天

汇编语言

一文解析iPaaS的价值及运用场景

RestCloud

ipaas

iOS代码混淆-从入门到放弃

雪奈椰子

8086汇编基础 debug D命令 查看指定地址的内容

万里无云万里天

汇编语言

8086汇编基础 call far ptr实例

万里无云万里天

汇编语言

8086汇编基础 call实例

万里无云万里天

回归测试的实践与思考

老张

软件测试 质量保障 回归测试 测试计划

互联网众包平台如何改变APP软件开发方式?

知者如C

WorkPlus企业内部聊天软件,如何保障企业数据和信息的安全性?

WorkPlus

探索低代码技术

树上有只程序猿

软件开发 低代码 JNPF

产品经理必备的14款需求管理工具推荐!

彭宏豪95

效率 软件 产品经理 需求管理 软件需求管理

书评:验收测试驱动开发实践指南_DevOps & 平台工程_Manuel Pais_InfoQ精选文章