发布时间:2025-12-09 19:02:16 浏览次数:4
目录:
软件测试生命周期与软件开发生命周期
开发模型
2.1 瀑布模型
2.2 螺旋模型
2.3 增量 和 迭代
2.4 敏捷
测试模型
3.1 V模型
3.2 W模型
| (1) | 需求阶段 | 需求阶段 |
| (2) | 计划阶段 | 测试计划 |
| (3) | 设计阶段 | 测试设计 |
| (4) | 编码阶段 | 测试执行 |
| (5) | 测试阶段 | 测试评估 |
| (6) | 运行维护 |
注:开发阶段 与 测试阶段 的前三个阶段完全一致。
一般在软件开发初期阶段需求不是很明确时,采用渐进式的开发模式。
螺旋模型就是渐进式开发模型的代表之一。
螺旋模型尤其适用于那些规模庞大,复杂度高,风险大的项目。
这种迭代开发的模式给软件测试带来了新的要求,它不允许有一段独立的测试时间和阶段,测试必须跟随开发的迭代而迭代。
优点
强调严格的全过程风险管理;
强调各开发阶段的质量;
提供机会检讨项目是否有价值继续下去。
缺点
引入非常严格的风险识别,风险分析,和风险控制,这对风险管理的技能水平提出了很高的要求,选举要人员,资金,时间的投入。
《敏捷宣言》中提出:我们通过身体力行和帮助他人来揭示更好的软件开发方式。
敏捷宣言(四个宣言):
个体与交互重于过程和工具;—强调沟通
可用的软件重于完备的文档;—轻文档
客户协作重于合同谈判;—客户全程参与
响应变化重于遵循计划。—拥抱变化
在每对对比中,后者并不是全无价值,但是我们更看重前者。
scrum
scrum是敏捷开发中比较流行的一种方式。
组成:
(1)product owner(产品经理)—整理需求,发布计划(权限最大)
(2)scrum master(项目经理)—服务,协调团队
(3)team(研发团队)—由不同技能的成员组成,通过紧密协同,完成每一次迭代的目标,交付产品。
迭代开发
scrum将产品的开发分解为若干个小sprint(迭代),其周期从1周到4周不等,但不会超过4周。参与的团队成员一般是5到9人。每期迭代要完成的user story是固定的。每次迭代会产生一定的交付。
scrum流程(六个步骤)
产品负责人负责整理user story,形成product backlog;
发布计划会议:po负责讲解user story,对其进行估算和排序,制定出这一期迭代要完成的user story—sprint backlog
迭代计划会议:项目团队对每一个story进行分解,分解的标准是完成该story的所有任务,每个任务都有明确的负责人,并完成工时的初估计;
每日例会:每天scrum master召集站立会议,每个成员回答自己干了什么,要干什么,有什么问题;
演示会议:迭代结束之后,召开演示会议,团队负责向大家展示本次迭代取得的成绩。把大家的反馈记录下来,由po整理,形成新的story;
回顾会议:项目团队对本次迭代进行总结,发现不足,制定改进计划,下一次迭代持续改进,以达到持续改进的效果。
敏捷中的测试:
测试工作的核心内客是没有变的,就是不断地找Bug,只是要调整好自己的心态,一切以敏捷的原则为主。
测试人员不能依赖文档,测试用例作用减弱,更多的采用思维导图、探索性测试(强调自由度,设计和执行同时执行,根据测试结果不断调整测试计划)、自动化测试
敏捷讲求合作,在敏捷项目组中,测试人员应该更主动点,多向开发人员了解需求、讨论设计、一起研究Bug出现的原因。
| 用户需求/需求分析与系统 | 了解需求,学习项目的范围,目的 |
| 概要设计 | 进行测试计划的编写 |
| 编码设计 | 进行测试用例的编写 |
| 系统测试 | 环境搭建,准备数据,测试执行,缺陷管理,编写测试报告 |
| 验收测试 | 协助用户进行验收 |
注:单元测试,集成测试,普通测试人员不参与,研发人员与白盒测试工程师完成。
为了解决V模型的缺陷,引入W模型(双V模型)
W模型中增加了开发过程中各阶段对应的验证与确认活动。
一个V是研发线,一个V是测试线。
(两条线并行)
W模型的特点:
测试与开发是同步进行的。
W模型的优点:
有利于尽早,全面的发现问题
W模型的缺点
不支持敏捷模式。