代码改变世界

敏捷测试的管理与最佳实践

2017-04-06 13:48  linkxu  阅读(1286)  评论(1编辑  收藏  举报

主题

1.敏捷方法给软件测试带来的挑战

2.敏捷测试的流程:一个Scrum 实例

3.用例验证和新功能的测试

4.回归测试的对策

5.自动化测试的策略和实施

6.敏捷测试工具

7.质量保证与协作

挑战

1.拥抱变化,测试计划和设计得不到重视

2.开发周期短,没有足够时间开发自动化测试脚本

3.回归测试的范围还是在不断增大

5.开发人员更能发挥主导作用,测试人员的地位和作用可能进一步降低

应对策略

1.积极面对,主动发挥作用

2.提高技术水平和编程能力

3.在每个迭代周期,写出一页纸的测试计划,将测试要点列出来。

4.不需要测试用例,而是针对use case 或user story直接进行验证

5.提高自动化测试水平,特别是单元测试的自动化测试覆盖率

Scrum 流程

image

敏捷测试

image

敏捷测试的流程

1.了解需求

2.讨论功能实现

3.建立检查点

4.集成测试

5.验收测试

6.回归测试

image

用例验证

1.持续验证:一旦有code drop, 就开始验证

2.不需要测试用例,直接基于用例来验证

3.扮演“用户代表”角色,而且可以及时提供更全面的质量反馈

4.一切从客户角度出发,想客户所想,强调用户体验

新功能测试

1.参与部分的单元测试、集成测试

2.实施端到端(end-to-end)测试,确保业务逻辑清晰、合理

3.及时反馈、及时沟通

4.探索性测试

回归测试对策

1.通过代码评审

2.持续测试的过程

3.基于风险和操作面分析来减少回归测试的范围

4.持续的努力,使回归测试自动化

5.关键还是系统的设计和实现,接口简单,降低组件和代码等的耦合性,改动的影响就比较容易确定。

自动化测试策略

1.构建一个灵活的、开放的自动化测试框架

2.以底层测试、接口测试、功能逻辑测试等为主,尽量避免UI测试

3.针对稳定的产品特性开发自动化测试脚本

4.需要开发人员强有力的支持,共同努力

5.良好的IT基础设施

image

自动化测试实施

1.在Check-in之前,针对local build完成新改动的验证

2.Build 之后自动运行BVT

3自动化脚本重构

image

敏捷测试工具

pTestNG or xUnit

pSelenium IDE/RC

psoapUI

pJMeter/BadBoy

p Fitnesse

pWiki, Excel

pMS TFS 2010

pBizMock

ORAYLIS BI.Quality

image

质量保证

1.项目组中每个人都有很强的质量意识,具有质量的主人翁精神,特别是开发人员,每时每刻提醒自己——“质量是构建出来的”

2.与客户或产品设计人员进行充分沟通,遵守高度一致的质量标准

3.遵守敏捷的流程(在敏捷,还是有流程的)

与产品经理协作

1.需求讨论要面对面地、充分地讨论

2.一起进行Product Work-through

3.测试中发现的问题及时反馈给产品经理

image

 

与开发人员协作

1.一起讨论产品功能的设计

2.对缺陷进行分析,总结出一些规律,帮助开发人员建立良好的习惯,预防缺陷

3.参与代码复审(code review)

4.可以和开发人员进行角色互换

image

实施效果

1.发布周期缩短,更能及时满足客户的需求

2.可以保证产品发布的质量,对质量更有信心

3.项目启动更快,更容易做决策

4.测试人员的作用得到应有的发挥

image

总结

敏捷测试 = 持续测试、持续反馈

敏捷功能测试 = 新特性的手工测试 (use case验证和探索性测试) + 原有功能的自动化测试 (回归测试)

敏捷测试人员 和开发人员的区别越来越小

敏捷测试 流程依据不同的团队特点而不同