《敏捷软件测试:测试人员与敏捷团队的实践指南》 Agile Testing A Practical Guide for Testers and Agile Teams ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??--?美? Lisa Crispin / Janet Gregory?著? ? 孙伟峰? 崔康?译
2010年出版的一本书,有点厚的一本书,有点老,但不妨碍从中有所得。
创建价值,业务价值最大化,产生真正的价值,交付有业务价值的高品质产品,交付真正实时的、可工作的产品,ROI投资回报率?--?敏捷的目标,也是执行敏捷测试的目标 短迭代、全视角、整体掌控、整体团队协作、高质量代码技能;团队整体为质量负责,共同承担测试的责任和保证产品质量 面向业务、面向客户、面向价值,寻找在整个开发周期中都贡献价值的方式 反馈、变化、开放、沟通、协作、自动化、探索 用最简单的方式验证是否达到客户质量标准,做最简单、最有用的事,获取更好的投资回报;验证活动贯穿全程 敏捷测试自动化的原因:将平淡的重复性工作自动化,以获得更多的时间投入到宝贵的专业技能提升上;需要健壮的自动化方案在有效的时间内发挥价值,高效的发布高质量的代码 主动协作而非等待 --?不是等待计划的测试时刻的到来,而是融入到敏捷测试过程中,寻找“测试能尽可能的做什么” 敏捷是一个轻量化的过程,小规模、小增量,构建和维护低成本的测试架构,为代码和客户服务 先确保最明显的用例是正常工作的,抵制寻找最可能发现问题的冲动 --?成熟测试的执行原则 工作在最有价值的工作上 --?什么是最有价值的?也许每个角色都会觉得自己的工作是最有价值的,所以都是有价值的工作? 在设计代码时就考虑可测性(功能、性能、安全等),尝试自动化,但同时需要眼睛、耳朵、才智配合的手工(比如探索测试,比如一次性的测试) 简单就好,只做需要的东西,做适合团队的事情;一次只做一件事,不断迭代,不断改进 关键是客户对质量的看法 --?质量是什么?想想。。。。。。 缺陷记录的目的:不遗忘,有效修复 你无法把质量测试进产品中
如何把质量构建到代码中,人是促使项目成功的关键 把质量构建进产品中而不是在生产出来之后再进行测试 测试人员的主要活动是测试和保证质量的人 以团队方式面对问题、解决问题,共同决定如何更好的改进产品 敏捷测试,面向业务/客户的测试,提供驱动编程,从客户利益角度出发保证质量,协助开发交付最大业务价值 合作的目标,团队中的所有参与者一起,为组织创造价值 快速反馈,驱动项目前进,整体团队运作,关心发布优秀产品所需的技能和资源 快速的从客户得到反馈,快速的从组织内得到反馈,快速的从测试得到已完成产品的质量反馈 创造力、接受新思想、乐于承担不同任务与角色,重视客户,技续关注全局 在较低版本提供客户目前最迫切需要的功能,发布最需要的功能,然后再完善,尽可能做最简单、最有用的事 --?尽可能早的体现产品价值 集中关注一两个问题,以确保彻底解决实际问题,获取更好的投资回报 避免质量警察思想:认为测试可以对质量负责 团队中的每个成员有同等的价值 敏捷:重量级文档 ->?轻量级文档,以一种合适的方式呈现给需要的人(按需要者所需要的格式书写);需要的文档:时时更新、阶段更新,而非最后统一做文档 能从数据中得到什么:不要过多的关注个人度量,而要着眼全局,着眼于目标和达到目标的趋势,关眼于度量的投资回报率 --?确认度量目标 缺陷的作用:协助开发、运维快速的查找和定位问题 --?因此是否记录,如何记录并不是关键,关键是解决问题,只有未能解决的问题才被记录,而不是将问题作为测试人员的绝以度量指标 敏捷象限:驱动开发的面向技术和面向业务的测试 帮助客户发现和描述预期系统行为,帮助客户获取和沟通所有与故事或主题有关的需求,注意:当迭代中不包含某个故事时,不要过多的涉及细节,因为变化时刻存在 面向业务测试的目的是促进客户和开发人员之间的沟通和协作,确保团队在每一次迭代中都产生真正的价值 认真思考来驱动非预期方向的测试并发现错误 --?软件的价值在于修得客户的痛点,找到痛点的可能是客户,更多的是软件服务提供方,如何平衡? 从客户角度看,应当交付什么产品(不要提供许多并不需要的额外信息);提出问题以发现客户希望的真正的业务价值,同时管理客户期望? 全面考虑所有功能及其影响,需要对系统或产品有完整的认识 新的领域知识或新技术意味着陡峭的学习曲线 坚持不懈的跟踪开发过程,制定合适的计划阻止“不成功”状态的出现 敏捷:适应价值的世界的一种收获,快速的产生价值以帮助业务增长和成功
敏捷测试成功要素
- 使用团队整体参与的方法
- 采用敏捷测试思维
- 自动化回归测试
- 提供并获取反馈
- 构建核心实践的基础 --?持续集成,测试环境,管理技术债务,增量工作,编码和测试协同工作
- 与客户合作
- 保持大局观
|