6 软件测试流程管理
6.1软件测试流程管理基础
1,测试流程管理的意义:
a) 角色分工的统一和集中分配便于管理和绩效考核
b) 沟通所需的软件开发和测试流程环节和结果、步骤帮助团队成员明确各自的工作任务
c) 明确测试流程便于领导层及时发现隐患,并采取行动
d) 便于新员工快速学习应做的工作,并融入团队工作
6.2软件测试的一般流程
1,开发模式与软件测试流程
ISTQB定义的软件测试过程:
a) 测试计划和控制;
b) 测试分析和设计;
c) 测试实现和执行;
d) 估出口准则和报告;
e) 测试活动结束
典型的软件测试流程:
需求分析--需求评审--开发人员编写排期--测试计划排期--编写测试用例--用例评审--提交基线--测试执行与结束
2,计划与设计阶段: 测试设计与测试计划>>测试项目确认
3,实施测试阶段:
实施测试阶段的环节:
1.执行测试用例
2.记录原始测试数据
3.记录和报告缺陷
4.对所发现的缺陷进行跟踪、管理和监控
具体测试流程:
1.系统测试
2.性能测试
3.自动化测试实施流程
4.测试的执行
5.缺陷管理流程
6.3敏捷测试流程
1,敏捷测试流程的特点 : 全程参与;轻量级文档;轻量级测试用例
敏捷开发模型适用的场景:需求可能快速变化,开发周期短,发布频率快
敏捷测试的核心:迭代
流程分析:在这个流程中弱化了文档,强调了各个人员的沟通,通过这种迭代的方式,三个月的项目,可以能两个月或两个半月就会完成。
敏捷测试的流程:第一块面板中是开发人员未实现的功能,第二块面板中是开发完成的功能,测试人员对其进行测试,发现不通过的就放回未开发的面板中,测试通过的将放到第三块面板中。
2,敏捷测试中的新功能测试和回归测试
针对新开功能的测试的策略:
1.以用户用例(User Case)或者用户故事(User Story)替代测试用例。
2.持续进行验证,一旦一个具有完整功能的代码模块完成,立刻开始测试工作,而不是等待整个功能完全完成才着手测试。
3.更多实施端到端(End-to-End)的测试,重视从最终用户角度出发保证业务流程的正确性和健壮性。
回归测试的策略:
1)实现更多的自动测试来保证回归测试的效率
2)对回归测试做适当的裁剪
•通过代码变更区域的分析,只针对受影响的范围进行测试。
•根据用户关注程度和基于风险分析,对功能点进行优先级排序,必要的时候只测试高优先级的功能点,而忽视 较低优先级的功能点。
3,敏捷(开发)测试活动:主要由三部分构成,从最初的用户故事设计和发布计划,到几次Sprint周期的迭代开发和测试,以及最后的产品发布阶段。每个时间段都有相应的测试活动。
4, Sprint周期中的主要测试活动:
·估算验收测试时间;
·测试框架的搭建;
·详细设计验收测试用例
5,敏捷测试中的测试工程师:
1)测试人员需要具备的素质
• 具有质量检测和编写代码的能力
• 具有防止缺陷和质量控制的能力
• 具有开发和执行测试程序的能力
• 总结而言,有三方面的基本素质要求:代码编写、测试和分析 。
2)测试人员的主要职责
• 定义质量
• 交流缺陷
• 及时反馈
6.4惠普测试流程管理工具
使用惠普ALM进行测试流程管理的最佳实践:
使用专业的软件项目管理软件:
~需求分析
~测试计划
~测试设计
~测试执行
~缺陷管理
~测试总结
~持续改进