1.需求是软件测试的依据
验证需求,保证需求正确可实现。细化需求,从需求中提交
2.软件测试人员如何深入了解需求?
从需求分析阶段就开始介入了解需求;站在用户需求的角度
3.测试用例
测试用例就是向被测试系统发起的一组集合,包含测试环境,测试数据,测试步骤,预期结果,(重要性,优先级,操作方式,标题等)
测试用例告诉我们测什么,怎么测 优点: 衡量需求的覆盖率(测试用例和需求对比),复用性,借鉴意义;可以用于回归测试;防止遗漏测试需求
4.什么是bug(软件错误)?
- 当且仅当,程序规格说明书(软件需求)存在并且合理,如果软件功能和软件规格说明书不相符合,我们就说是软件错误;
- 当软件需求不存在, 用户需求存在并且合理,软件功能和用户功能不相符合,就说明是软件错误;
软件测试的阶段:整个软件开发的生命周期,需求阶段介入 验证需求的合理性和正确性
5.开发模型(5个模型)
软件开发的生命周期 需求分析——计划——设计——开发——测试——运行维护 (1)瀑布模型 特点:阶段性强,每一个阶段比较独立;看重前期的需求分析和后期的测试 缺点:测试在编码后才开始介入,导致前期的问题后期才发现,会失去错误补救的机会 (2)螺旋模型 适合于项目庞大,前期风险大,不是很明确项目 特点:强调每一个迭代的测试质量和风险分析 缺点:风险管控,人力物力投入成本很多,成本比较大 螺旋模型是抗风险能力最强的 (3)增量模型,迭代模型 同一个系统的四个模块 A B C D 两周 增量模型: 第一周开发A B 功能模块 第二周开发C D 功能模块
迭代模型,第一周先开发A B C D的基础功能,第二周在第一周的基础之上完善其他的功能 特点:抗击风险能力强 (4)敏捷模型(重要) 特点:轻文档、轻流程、重目标、重产出、拥抱变化
- 发布计划会议:产品经理收集需求形成userstory,讲解,排出本迭代需要进行开发的userstory形成sprint backlog
- 迭代计划会议:分析用户故事,把userstory分解成一个个的任务,分配开发人员,制定开发计划
- 每日站会:昨天干了什么,遇到的问题,今天的计划
- 产品演示会议:甲方,用户演示产品,把不足的地方收集成user story,下一次迭代改进
- 回顾计划会议:回顾整个迭代过程,把不足的地方找出,在下一次迭代过程中改进,优化迭代流程
6.测试模型
(1)v模型 特点:每一个阶段独立性强 左边每一个阶段是右边测试阶段的依据 和右边每一个测试阶段——阶段 缺点:编码后才进行测试 前期的错误后期才会发现,会失去错误及时纠正的机会 (2)w模型,也称之为双v模型 特点:
- 每一个阶段独立性强;
- 测试一开始就介入;可以保证前期的问题及时发现和纠正
- 测试和开发并行的
缺点: 每一个阶段都是串行的过程;一个阶段完了之后就进行下一个阶段 不支持敏捷开发(拥抱变化)
|