软件缺陷和软件缺陷种类

发表于:2021-3-01 09:25

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:小白很快乐    来源:博客园

  1.软件缺陷的定义
  软件缺陷,常常又被叫做Bug,计算机软件或程序中那些导致系统或部件不能正常运行,不符合用户需求的缺陷。
  1.1、什么样的软件问题可以称之为软件缺陷(Bug)
  1)软件未达到产品说明书标明的功能。
  2)软件出现了产品说明书指明不会出现的错误。
  3)软件功能超出产品说明书指明的范围。
  4)软件未达到产品说明书虽未指出但应该达到的目标。
  5)软件难以理解、不易使用、运行速度缓慢或者从测试人员的角度看最终用户认为不好。
  思考:
  第一个是振铃坏了,属于硬件缺陷。
  第二个是删除功能不能直接删除,应该给出相应的提示供用户选择,属于易用性问题,是软件缺陷。
  第三个是服务器配置问题,并不是软件缺陷。
  第四个是性能问题,是软件缺陷。
  第五个是功能问题,是软件缺陷。
  第六个是安全性问题,是软件缺陷。
  1.2、软件缺陷的案例描述
  1)在Excel某个单元格中输入“20”,单击右键,选择“设置单元格格式”,在数字Tab页的分类中,选择日期,单击“确定”按钮。同学们猜一猜结果会怎样?
  结果是1900/1/20
  2)同上所述,输入"60",会是怎样?
  结果是1900/2/29
  从1900/1/20开始向后累加60天,大家都知道1月份是31天,60减去31结果等于29,那这么算来1900/2/29这个结果是正确的。
  但是1900年2月没有29号,这是不是软件的缺陷?
  3)作为测试人员,请问你该如何编写这个缺陷报告?
  4)如下所示的缺陷报告
  正确的缺陷报告:
  这个缺陷报告标题简短,语言精炼;重现步骤较详细的描述了每一步操作,第三步揭示了问题的本质,第四步描述了在多个Excel版中测试的结果,并且给出了预期结果和实际结果,形成了鲜明的对比。
  在禅道中记录如何?
  1.3、缺陷报告的八大要素
  缺陷编号,是缺陷的唯一标识符,在禅道之类的缺陷管理工具中一般都会自动生成,这个大家不用纠结。
  缺陷状态,是缺陷跟踪过程的进展情况,缺陷工具都会有相应的流程和状态标识,一般不需要我们去选择。
  缺陷标题,是缺陷的概述,最好能一针见血的揭示出该缺陷的本质,这个需要后续多练习。
  重现步骤,就是一步一步描述再现缺陷的操作步骤,基本要求就是开发人员按照步骤能重现Bug就可以。
  严重程度,就是缺陷对软件系统的影响程度,有些影响较大,有些影响较小。
  优先级,就是修复缺陷的重要性或紧迫性,即哪些缺陷需要紧急修复,哪些缺陷可以后续再修复。
  缺陷类型,就是根据缺陷产生的来源和根源划分出的缺陷种类。
  测试环境,主要是测试环境的配置,包括操作系统浏览器
  1.3.1、缺陷编号
  在这里就不详细,一般缺陷管理工具自动生成。
  1.3.2、缺陷状态
  按照缺陷的正常处理流程,包括新建、已打开、已指派、已修复或已解决和已关闭这五个状态。
  对于禅道管理软件的Bug状态,目前只有三种:激活、已解决和已关闭。
  对于这些缺陷状态,大家不需要纠结,一般缺陷工具会自动标识。
  1.3.3、标题
  对缺陷或错误特征的概要描述,可以使用短语或短句,要求简练、准确。
  1.3.4、重现步骤
  第一部分,描述该缺陷重现的操作顺序,要求:完整、简洁、准确;第二部分,描述实际出现的结果;第三部分,描述预期想要的结果。
  1.3.5、严重程度
  严重程度一般分为关键的、主要的、次要的和无关紧要的。
  “关键的”属于最严重的,主要是缺陷影响关键功能,例如崩溃、死机,主要业务流程不能跑通;
  “主要的”意思是缺陷影响主要功能;
  “次要的”的意思是缺陷影响次要功能;
  “无关紧要的”意思是缺陷不影响功能。
  思考Bug1属于那种严重程度?
  1.3.6、优先级
  优先级一般分为紧急、高、中和低。
  紧急的意思就是必须立即修复/在下一次构建中修复;高的意思是必须在任何即将发布的版本中修复;中的意思是可在发布后/下次发布时修复;低的意思是能修复,也可能不修复。
  思考Bug1属于那种优先级?
  1.3.7、缺陷类型
  缺陷类型按照一般分类可以分为16类,禅道软件中分为10类。
  思考Bug1属于那种缺陷类型?
  1.3.8、测试环境
  测试环境按照一般分类可以分为操作系统、浏览器和手机型号3类。
  对于C/S结构的软件,测试环境只会选择操作系统即可,对于Web软件,测试环境主要选择浏览器,对于移动端软件,相对较复杂,测试环境这三类一般都需要选择。
  接下来我们看一下Bug1的测试环境,请问同学们选择哪个合适?
  针对这个Bug,操作系统选择Android,手机型号可以选择你测试时的手机型号。
  1.3.9、其他要素
  版本就是我们发现的缺陷所在的软件版本,一般是软件版本加上该版本的构建号。
  分派给就是将发现的缺陷分配给相关的人员。
  所属项目/模块就是发现的缺陷所属的产品、项目和模块。
  提交人和提交时间就是字面意思。
  附件就是通过上传图片或视频,可以更好的补充说明这个缺陷。
  接下来我们看一下Bug1的其他要素,请问同学们选择哪个合适?
  针对这个Bug,我们给出了一个通用的答案,大家可以参考一下。
  1.4、Bug生命周期
  首先测试人员提交Bug,这时Bug的状态标识为“新建”;开发经理确认后将Bug分配给相关的开发人员去处理,此时Bug状态为“已打开”;开发人员拿到指派给自己的Bug,开始进行处理,开发人员已经修复了该Bug后,设置Bug状态为“已修复”;测试人员拿到已经修复的Bug进行验证,如果验证通过,则将该Bug设置为“已关闭”状态;如果验证未通过,则将该Bug设置成“重新打开”。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号