敏捷测试价值观、方法和实践读书笔记(2)

简介: 本章节介绍敏捷测试在快速变化的软件开发环境中的重要性。传统测试方法在敏捷环境中面临时间紧迫、文档不足、频繁变更及资源短缺等挑战。敏捷测试遵循敏捷开发原则,强调测试与开发的紧密融合、团队协作及业务价值交付。其特点包括更强的协作、更短的周期、更灵活的计划及高效的自动化。相较于传统测试,敏捷测试具有加快产品上市时间、提升整体质量及简化流程降低成本的优势。

第2章 敏捷测试

1 在敏捷环境下的传统测试

在敏捷环境下传统测试面临的困境

在敏捷环境下传统测试面临的挑战

(1)时间极短

(2)文档极少

(3)变更极频繁

(4)资源极缺

2 敏捷测试的概念

敏捷测试的定义

敏捷测试是遵从敏捷软件开发原则的一种测试实践。

敏捷开发模式把测试集成到整个开发流程中,而不再把它当成一个独立的阶段,因此,测试变成了整个软件开发过程中非常重要的环节。

敏捷测试的核心内涵:

(1)敏捷测试遵从敏捷开发的原则,强调遵守

(2)测试被包含在整个开发流程中,强调融合

(3)跨职能团队,强调协作

(4)敏捷测试是为了交付业务价值,强调价值

3 敏捷测试宣言

敏捷测试宣言 Agile Testing Manifesto

测试是一个活动, 胜于测试是一个阶段。

Testing is a activity Over Testing is a phase

预防缺陷 胜于 发现缺陷。

Prevent Buss Over Finding Bugs

做测试者 胜于 做检查者。

Be a tester Over Be a checker

帮助构建最好的系统 胜于 破坏系统。

Helping wo build the BEST system Over Breaking the system

团队为质量负责 胜于 测试者为质量负责。

whole team takes responsibility for quality Over Tester is responsible for quality

测试是一个活动 胜于 测试是一个阶段

《Google 软件测试之道》中写道:“当你把开发过程和测试放到一起,将它们像在搅拌机里一样混合搅拌,直到不能区分彼此的时候,你就得到了质量。”

待办 开发 测试 完成

->

待办 处理中 审核 完成

预防缺陷 胜于 发现缺陷

做测试者 胜于 做检查者

帮助构建最好的系统胜于破坏系统

团队为质量负责胜于测试者为质量负责

4 敏捷测试的特点与价值

敏捷测试的特点

(1)更强的协作:反对:开发需要测试帮忙。开发->开发领导->测试领导->测试

(2)更短的周期

(3)更灵活的计划

(4)更高效的自动化

(5)更广泛的技能要求:T型人才

敏捷测试与传统测试差异

重要维度

传统测试

敏捷测试

测试发生的时间节点

测试发生在软件生命周期的最后阶段,在

测试发生在每次 Sprint 迭代内,以及 Sprint 的集成过程中

团队沟通

团队之间除了正式沟通,还有很多非正式沟通,软件发布上线前团队之间的沟通是正式的,很多时候以邮件为载体

团队之间除了正式沟通,还有很多非正式沟通如口头沟通

测试自动化

测试自动化是可选项

测试自动化被高度推荐。测试自动化是决定敏捷测试成功的重要因素之一

测试标准

测试以需求规格文档为准,用户真正的需求很多时候在转换成需求文档时会失真

测试以用户最终需求为准,敏捷中的行为驱动开发(BDD) 实践等就是以用户最终求为准的

测试计划的详细程度

详细的测试计划。传统模式属于“预定义”过程控制模式,需求相对晰明确

精益化的测试计划。在最初阶段,需求本身比较模糊,无法也没有必要编写详细的测试计划

测试计划的制订方式

做计划是一次性的活动,因为传统模式按阶段划分,做计划会被安排在最初阶段,后面不再进行相关的计划工作

做计划是持续性的活动,分为不同的级别:·最初阶段做粗粒度的计划·在后续的迭代中不断优化为刚好够用(Just-In-Time)的计划

测试计划制订人

测试主管计划整个团队的测试工作,一般做计划时采用“自顶向下”的方式

团队被授权并主动参与计划,一般做计划时采用“自底向上”的方式

需求的详细程度

在最初阶段就要求给出详细的需求,并且需求需要经过严格评审,不欢迎需求变更

在最初阶段允许提出粗粒度的需求,在后面的迭代阶段逐渐细化,欢迎需求变更

需求呈现的方式

标准的需求规格说明书

需求以用户故事的方式呈现

客户参与

在需求被定义后,客户只是有限地参与,只有在需求调研的时候会较多地参与

客户参与贯穿整个项目生命周期,包括每次迭代的计划会和评审会等

敏捷测试的价值

1.加快上市时间(Time-to-Market),缩短价值交付周期。

2. 质量由团队保障,提高整体产品质量。

3.化繁为简,节省成本

首先,敏捷测试不要求详细的测试计划和测试文档,也没有定义繁复冗长和缺陷管理流程。

其次,敏捷测试提倡尽早测试,更早发现缺陷。

最后,敏捷测试分小批量迭代执行。

目录
相关文章
|
2月前
|
人工智能 自然语言处理 测试技术
从人工到AI驱动:天猫测试全流程自动化变革实践
天猫技术质量团队探索AI在测试全流程的落地应用,覆盖需求解析、用例生成、数据构造、执行验证等核心环节。通过AI+自然语言驱动,实现测试自动化、可溯化与可管理化,在用例生成、数据构造和执行校验中显著提效,推动测试体系从人工迈向AI全流程自动化,提升效率40%以上,用例覆盖超70%,并构建行业级知识资产沉淀平台。
从人工到AI驱动:天猫测试全流程自动化变革实践
|
2月前
|
数据采集 存储 人工智能
从0到1:天猫AI测试用例生成的实践与突破
本文系统阐述了天猫技术团队在AI赋能测试领域的深度实践与探索,讲述了智能测试用例生成的落地路径。
从0到1:天猫AI测试用例生成的实践与突破
|
3月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
390 1
|
3月前
|
机器学习/深度学习 人工智能 自然语言处理
如何让AI更“聪明”?VLM模型的优化策略与测试方法全解析​
本文系统解析视觉语言模型(VLM)的核心机制、推理优化、评测方法与挑战。涵盖多模态对齐、KV Cache优化、性能测试及主流基准,助你全面掌握VLM技术前沿。建议点赞收藏,深入学习。
944 8
|
3月前
|
Java 测试技术 API
自动化测试工具集成及实践
自动化测试用例的覆盖度及关键点最佳实践、自动化测试工具、集成方法、自动化脚本编写等(兼容多语言(Java、Python、Go、C++、C#等)、多框架(Spring、React、Vue等))
200 6
|
3月前
|
人工智能 边缘计算 搜索推荐
AI产品测试学习路径全解析:从业务场景到代码实践
本文深入解析AI测试的核心技能与学习路径,涵盖业务理解、模型指标计算与性能测试三大阶段,助力掌握分类、推荐系统、计算机视觉等多场景测试方法,提升AI产品质量保障能力。
|
3月前
|
人工智能 自然语言处理 测试技术
AI测试平台的用例管理实践:写得清晰,管得高效,执行更智能
在测试过程中,用例分散、步骤模糊、回归测试效率低等问题常困扰团队。霍格沃兹测试开发学社推出的AI测试平台,打通“用例编写—集中管理—智能执行”全流程,提升测试效率与覆盖率。平台支持标准化用例编写、统一管理操作及智能执行,助力测试团队高效协作,释放更多精力优化测试策略。目前平台已开放内测,欢迎试用体验!
|
4月前
|
人工智能 资源调度 jenkins
精准化回归测试:大厂实践与技术落地解析
在高频迭代时代,全量回归测试成本高、效率低,常导致关键 bug 漏测。精准化测试通过代码变更影响分析,智能筛选高价值用例,显著提升测试效率与缺陷捕获率,实现降本增效。已被阿里、京东、腾讯等大厂成功落地,成为质量保障的新趋势。
|
4月前
|
搜索推荐 Devops 测试技术
避免无效回归!基于MCP协议的精准测试影响分析实践
本文揭示传统测试的"孤岛困境",提出MCP(Model Context Protocol)测试新范式,通过模型抽象业务、上下文感知环境和协议规范协作,实现从机械执行到智能测试的转变。剖析MCP如何颠覆测试流程,展示典型应用场景,并提供团队落地实践路径,助力测试工程师把握质量效率革命的新机遇。
|
4月前
|
人工智能 缓存 自然语言处理
大模型性能测试完全指南:从原理到实践
本文介绍了大模型性能测试的核心价值与方法,涵盖流式响应机制、PD分离架构、五大关键指标(如首Token延迟、吐字率等),并通过实战演示如何使用Locust进行压力测试。同时探讨了多模态测试的挑战与优化方向,帮助测试工程师成长为AI系统性能的“诊断专家”。