敏捷测试:从实践中学习与反思
1. 敏捷测试项目背景
Martin Phillips所在的IBM团队是一个新组建的敏捷开发团队,负责为新兴市场交付一款新的中间件产品。团队成员之前都没有敏捷开发的经验,且公司内不同团队的敏捷实践也存在差异。该项目之前主要采用瀑布模型,近期项目开始采用迭代开发,迭代周期为2 - 3个月,而此次项目采用两周的迭代周期,目标是在十个月内交付产品,目前已完成12次迭代,还剩6次迭代。
团队共有18人,人员构成如下:
| 人员角色 | 数量 |
| ---- | ---- |
| 架构师 | 1 |
| 开发人员 | 7 |
| 测试人员 | 5 |
| 文档编写人员 | 1 |
| 项目经理 | 1 |
| 人员经理 | 1 |
| 用户中心设计专家(兼职) | 1 |
| 销售经理(兼职) | 1 |
产品是一款企业级的分布式Java应用程序,需要与现有的现货产品集成,支持多种分布式平台以及zOS大型机。产品包含命令行界面、Eclipse插件图形界面、图形安装程序和相关文档。除了产品的功能需求,还需要测试安装程序、图形界面和文档,并符合公司的可访问性和全球化等要求。
2. 敏捷测试流程定义
团队目前遵循的敏捷测试流程是在实践中不断发展和演变的,具体如下:
- 测试与开发共处一地 :便于在设计和开发阶段获取测试输入,在测试阶段获取开发输入。
- 单元测试 :与代码一起开发,每次构建时运行,单元测试失败则视为“不良构建”,