0
点赞
收藏
分享

微信扫一扫

软件测试—基本概念

J简文 2022-05-04 阅读 66
功能测试

目录

需求

概念

需求是开发人员开发的依据,也是测试人员测试的依据。

软件需求:为了满足用户的期望和规定的合同(文档、标准、规范)所需要的条件和权能,称为需求。

用户需求和软件需求的关系

软件需求是用户需求转化而来的,它是经过对用户需求的验证(正确性、合理性),分析后,具体的功能实现的细节说明。

什么是BUG

  • 当软件需求规格存在并且合理,软件功能和软件需求不相符,说明就是BUG。
  • 如果软件需求不存在,用户需求存在并且合理,软件功能和用户需求不相符合,说明是BUG。

什么是测试用例

概念

测试用例是向被测试系统发起的一组集合,测试环境、测试步骤、测试数据、预期结果、标题、重要性、功能模块、优先级、执行方式等。

案例

在这里插入图片描述
网易邮箱注册功能测试用例
标题:邮箱注册邮箱输入项测试
测试环境:Chrome 版本 98.0.4758.102 Windows10联想电脑 64位
测试数据:hhh_123456@163.com
测试步骤:
(1)进入网易邮箱注册页面https://mail.163.com/register/index.htm?from=force/&cmd=register.entrance
(2)输入邮箱地址、输入符合需求密码和手机号码
(3)勾选同意,点击注册
预期结果:注册成功

开发模型

瀑布模型

在这里插入图片描述
(1)瀑布模型是线性顺序进行的软件开发模型。
(2) 优点:强调开发的阶段性,强调早期计划及需求调查。
(3)缺点:(a)依赖于早期进行的唯一一次需求调查,不能适应需求的变化;(b)由于是单一的流程,开发中的经验教训不能反馈应用于本产品的过程,风险往往迟至后期的测试阶段才暴露出来,因而失去了及早纠正的机会。

螺旋模型

(1)一般在软件开发初期阶段需求不是很明确时,采用渐进式的开发模型,螺旋模型是渐进式开发模型的代表之一。
(2)这对于那些规模庞大、复杂度高、风险性大的项目尤其适合。它不允许有一段独立的测试时间和阶段,测试必须跟随开发迭代而迭代,因此,回归测试尤为重要。
(3)优点:强调严格的全过程风险管理,强调各开发阶段的质量,提供机会探讨项目是否有价值继续下去。
(4)缺点:引入非常严格的风险识别、风险分析和风险控制,这对风险管理的技能水平提出了很高的要求。

增量迭代

在这里插入图片描述

敏捷开发

敏捷模型能够适应需求的变化。

特点:轻文档,轻流程,重目标,重产出。敏捷开发周期短,团队人员少。
敏捷流程 Scrum
角色:
PO(product owner),客户的代表方,整理客户需求,形成user story
SM(scrum master),项目经理,管理整个开发流程,保证敏捷开发流程的顺利实施
ST(scrum team)研发团队,各种技能人员组成,开发、测试,目标是交付一个高质量可用软件。

流程:
产品负责人负责整理user story,形成product backlog。
发布计划会议:product owner负责讲解user story,对其进行估算和排序,发布计划会议的产出就是制定出这一期迭代要完成的story列表,sprint backlog。
迭代计划会议:项目团队对每一个story进行任务分解,分解的标准是完成该story的所有任务,每个任务都有明确的负责人,并完成工时的初估计。
每日例会:每天scrum master召集站立会议,团队成员回答昨天做了什么今天计划做什么,有什么问题。
演示会议:迭代结束之后,召开演示会议,相关人员都受邀参加,团队负责向大家展示本次迭代取得的成果。期间大家的反馈记录下来,由po整理,形成新的story。
回顾会议:项目团队对本期迭代进行总结,发现不足,制定改进计划,下一次迭代继续改进,已达到持续改进的效果。

测试模型

V模型

在这里插入图片描述
v模型是瀑布模型的变种。
优点:左边的每一个阶段和右边的每一个阶段一一对应,左边的每个阶段是右边每个测试阶段的依据。
缺点:测试介入的晚,会失去前期及时纠正的机会。

W模型

在这里插入图片描述
W模型的特点:测试与开发是同步进行的。
W模型的优点:有利于尽早的全面的发现问题。如:需求分析完成后,测试人员就参与到对应需求的验证和确认活动中,以尽早的找出缺陷所在。测试介入早,前期的风险可以及时发现。
缺点:每一个阶段是一个单一串行的过程,不能适应需求的变化,无法适应敏捷开发。

软件测试的生命周期(测试流程)

需求分析—测试计划—测试设计/开发—测试执行—测试评估
(1)需求分析:需求验证(合理性)、分析需求、细化需求
(2)测试计划:需要的人员、时间、测试目的、测试范围
(3)测试设计/开发:根据需求提炼出来的功能点,开发测试用例
(4)测试执行:执行测试用例、提出BUG、回归测试
(5)测试评估:评估本次的测试情况、BUG情况(遗留的BUG)、测试用例执行情况。

如何描述一个BUG

(禅道、tapd、jira)
1.测试版本
2.测试环境
web系统 电脑系统(Windows7/10/Mac)、哪一个浏览器(版本号)
APP 手机品牌、型号、系统(Android IOS 哪一个版本)
3.测试步骤(数据) 具体的数据
4.实际结果
5.预期结果(和需求一致)
6.其他附件(错误截图、错误日志等)

和开发人员产生冲突怎么办?

1.先检查自身,看bug的描述是否清楚
2.从用户的角度劝说开发人员
3.bug的定级要有理有据
4.要不断提高自己的业务水平和技术水平
5.和产品经理商量,开bug评审,讨论此bug有没有修改的必要以及其他的解决方案。

举报

相关推荐

0 条评论