AICon上海|与字节、阿里、腾讯等企业共同探索Agent 时代的落地应用 了解详情
写点什么

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

  • 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:182784
用户头像

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

关注

评论

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

什么时候选择 Docker,什么时候选择虚拟机?

测吧(北京)科技有限公司

测试

Docker 与虚拟机:架构差异与选择指南

测吧(北京)科技有限公司

测试

深入解析:Docker 与虚拟机的架构差异及适用场景

测吧(北京)科技有限公司

测试

OpenSPG/KAG v0.6 发布,兼顾事实推理与摘要生成,支持用户自定义 Schema2025

可信AI进展

知识图谱 大模型 rag

iMazing和iTunes功能差异点 iMazing比iTunes好用在哪里?

阿拉灯神丁

imazing iTunes 苹果手机备份 iOS 设备数据清除软件

全方位赋能创意工作流程:西部数据推出全新消费级存储解决方案

极客天地

「零售数据通道」数据炼金术:千亿级流量资产湖仓架构转型

京东科技开发者

Docker 网络模式实战:从 Bridge 到 Host 再到 Container 的配置与应用

测吧(北京)科技有限公司

测试

Tuner for YouTube music Mac(YouTube音乐播放器)v7.2激活版

Rose

年度重磅 |《2024华为开发者宝典》免费下载,多维度解读华为根生态技术

华为云开发者联盟

人工智能 鸿蒙 华为云 鲲鹏

解锁淘宝商品详情新境界:利用item_get API打造个性化智能购物之旅

代码忍者

淘宝API接口

OpenAI故障复盘 - 阿里云容器服务与可观测产品如何保障大规模K8s集群稳定性

阿里技术

阿里云 容器 最佳实践 k8s openai

解读ENS网络连接,面向多云多池网络的高效互联

华为云开发者联盟

网络 数据中心 VPC 华为云Stack ens

短视频APP的开发难点

北京木奇移动技术有限公司

软件外包公司 APP外包公司 短视频APP

zMaticoo ADX网关系统多云架构解决方案入选CSDN年度榜单

新消费日报

VMware ESXi 8.0U3c macOS Unlocker & OEM BIOS Dell (戴尔) 定制版

sysin

esxi

跨界融合:人工智能与区块链如何重新定义数据安全?

天津汇柏科技有限公司

区块链 AI 人工智能

2025-01-08:找到按位或最接近 K 的子数组。用go语言,给定一个数组 nums 和一个整数 k,你的目标是找到一个子数组,使得该子数组中所有元素进行按位或运算后的结果与 k 之间的绝对差值尽

福大大架构师每日一题

福大大架构师每日一题

BetterTouchTool for Mac:触控增强神器,打造个性化高效操作体验

Rose

选择合适的虚拟化技术:Docker vs 虚拟机的使用场景分析

测吧(北京)科技有限公司

测试

设计模式-策略模式

京东科技开发者

首个机器人4D世界模型来了!

极客天地

国产数据库选型指南

YashanDB

数据库 yashandb

归因分析在去哪儿的应用落地

Qunar技术沙龙

数据挖掘 算法 数据分析 后端 归因分析

Docker 容器网络模式详解:Bridge、Host 与 Container 的区别

测吧(北京)科技有限公司

测试

Magnet pro for mac(窗口分屏管理工具)v2.14.0中文免激活版

Rose

【GreatSQL优化器-09】make_join_query_block

GreatSQL

短视频APP的主要功能

北京木奇移动技术有限公司

软件外包公司 APP外包 短视频APP

公益组织使用堡垒机场景简单分析

行云管家

等保 等级保护 等保测评

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