本文是参考ThoughtWork冰玉老师(https://blog.csdn.net/bingyulin)讲的敏捷课程加上自己的理解写的,想听原版可以关注ThonghtWork公众号,里面有课程回顾
指导性原则:团队为质量负责
- 测试角色是产品质量的把关者,而是团队质量的支撑者
- 质量不是测试出来的,是由团队不同角色为质量负责的最终结果
软件质量是什么
- 产品的系统功能、性能、用户体验
- 需求文档
- 代码质量
- 产品质量
- 技术方案
- 项目风险控制
- 维护成本
- 时间管理
- …
在敏捷开发中,作为测试角色,我们除了关注本身产品的质量外,还需要关注代码、技术方案、交付质量等等
软件质量体现在那里
- 外部质量
不同角色使用软件中可感知的质量,如功能、交互体验、易用性等 - 内部质量
内部代码逻辑
代码质量
底层业务架构 - 内建质量
软件开中内建的开发流程是否完善
软件缺陷是否逐步减少
开发过程中对缺陷反馈是否快速及时
线上问题是否及时反馈处理
质量核心点
- 快速反馈,任何变更可以快速反馈,快速验证,并且可以快速修复
- 软件开发初期就聚焦把精力集中在正确的事情上,不是发现错误及时修复
- 团队在代码、设计和交付过程中都有信息做出改变
- 团队可以对质量负责,为任何变更负责
质量容易忽视的地方
- 需求定义模糊
- 追求过快的交付
- 缺乏充分的测试
- 代码没有及时重构
- 开发时间过短
- 跨功能需求太多
- 性能预期不足
- 技术选型是否
- 不关注CI/CD
- 异常处理不到位
- 线上环境关注较少
- …
由此以上列举的一些问题,我们可以看出,质量其实是开发过程中任意做的不好的地方都算是质量问题,我们需要关注的不仅仅仅缺陷和缺陷数量
团队如何为质量负责
- 在敏捷开发生命周期中