《软件测试的艺术》:敏捷开发的测试
原创- 2023-12-21 15:19:29
- 614
本篇目录
一、关于敏捷开发
轻量化和快速的开发方法:
敏捷宣言
- 个体和互动 高于 流程和工具;
- 工作的软件 高于 详尽的文;
- 客户合作 高于 合同谈判;
- 响应变化 高于 遵循计划。
二、敏捷开发的特征
1、迭代式和增量式的开发模式,强调测试在其中的重要作用。
2、围绕以用户为中心,以客户需求为导向的开发过程,随时做好迎接变化的准备。
3、引入了灵活性。
4、用户客户参与、测试驱动、紧凑的迭代开发周期。
5、敏捷开发方法。
1、敏捷开方法
Scrum进度跟踪
- 迭代式和增量式的项目管理方法,支持多个敏捷开发模式支持多个敏捷开发模式。
- 适用所有的敏捷方法,用来度量敏捷开发的速度进度。
开放统一过程:标准的统一过程。
功能区动开发 FDD:使用工业界的最佳实践,以客户提供的功能需求为驱动。
极限编程:强调并依赖单元测试和验收测试。
敏捷建模:组建模以及文档化软件系统的原则和惯例。
敏捷统一过程动态系统开发方法:为敏捷量身定做的统一软件过程的精简版。
核心统一过程:有的放矢,只选择适合当前项目的实践。
三、敏捷测试
1.协同测试的一种形式,每个人都参与到测试计划的设计、实现和执行。
2.测试并不是一个独立的阶段,而是与开发紧密联系并驱动开发。
3.单元测试是失败验证测试,从破坏的角度设计单元测试用例。
4.需要及时的反馈,青睐于自动化测试。
四、极限编程与测试
1、XP测试
- 连续测试;
- 包含验收测试;
- 单元测试占主要部分。
2、XP实践
- 计划与需求分析;
- 小规模、递增发布;
- 系统隐喻;
- 简要设计;
- 连续测试;
- 重构;
- 结对编程;
- 代码集体所有权;
- 持续集成;
- 每周40小时工作;
- 客户在现场;
- 按标准编码。
3、XP关注点
- 实现简单的设计;
- 开发人员与客户沟通协作;
- 不断测试代码库;
- 重构以适应规格说明的变更;
- 寻求用户的反馈。
4、XP的不同
- 避免大规模项目的综合症,重点收集一般性需求,而非所有细节;
- 避免缤写不需要的功能,短时间内开发出高质量软件;
- 精力集中在测试上。
5、XP计划
- 确定需求、设计场景,深入洞悉软件的目的和需求;
- 无形的好处,用户客户深入的参与,获得对程序的拥有感和信心。
五、极限测试
1.极限编程是主流敏捷开发方法之一,轻量级的开发过程把目光集中于沟通、计划和测试。
2.极限测试重点在于单元测试和验收测试。
3.一旦代码库发生变化,就要进行单元测试。
4.重要的发布节点,由客户来执行验收测试。
5.要求开发在编码之前,设计测试,通过单元测试提高程序满足验收标准的概率。