软件缺陷
软件缺陷的定义
软件缺陷,通常又被叫做Bug或者defect,即为软件或程序中存在的某种破坏正常运行能力的问题、错误、其存 在会导致软件产品在某种程度上不能满足用户的需求。
软件缺陷是指存在于软件(程序、数据、文档)中的那些不符合用户需求的问题。
软件缺陷的表现形式
1、软件未达到需求规格说明书标明的功能
2、软件出现了需求规格说明书指明不会出现错误的地方
3、软件的功能超出了需求规格说明书指明的范围
4、软件出现了需求规格说明书虽未指明,而应该达到的目标
5、软件测试人员认为软件难以理解,不易使用,运行速度慢,或者最终用户体验不好。
具体表现形式如下:
1、 软件未达到需求规格说明书标明的功能
1、计算器说明书一般声称该计算器将准确无误地进行加、减、乘、除运算。
2、如果测试人员或用户选定了两个数值后,随意按下了“+”号键,结果没有任何反应。
2、软件出现了需求规格说明书指明不会出现的错误
1、若在测试过程中发现,因为电池没电而导致了计算不正确。
2、但软件需求规格说明书中明确指出在任何情况下都不允许出现计算不正确的情况出现。
3、软件的功能超出了需求规格说明书指明的范围
1、若在进行测试时,发现除了规定的加、减、乘、除功能之外,还能够进行求平方根的运算, 而这一功能并没有在说明书的功能中规定。
4、软件未达到需求规格说明书虽未指明而应该达到的目标
1、假如计算器说明书指明计算器不会出现崩溃、死锁或者停止反应,而在用户随意按、敲键盘后, 计算器崩溃了。
5、 软件测试人员认为软件难以理解、不易使用、运行速度慢、或者最终用户认为不好
1、测试人员或最终用户发现计算器某些地方不好用,比如,按键太小、显示屏在亮光下无法看清等。
软件缺陷产生的原因
软件缺陷产生是不可避免的,造成软件缺陷产生的原因主要归纳如下:
1、需求解释、记录或者定义错误
2、设计文档说明存在错误或者拼写错误
3、编码说明、程序代码有误
4、硬件或者软件系统上存在错误
软件缺陷产生的根源
需求的变化
需求说明书、设计文档、程序的变更
交流不充分
客户与开发人员、开发人员与测试人员等
软件的复杂性
功能复杂、开发复杂、测试复杂
开发人员的错误
对需求的理解、开发压力、能力与经验
进度压力
项目周期比较紧
软件缺陷的信息
为了便于缺陷的定位、跟踪和修改,要对所发现的缺陷,按照缺陷的严重程度、优先级、发现阶段、 修复阶段、缺陷的性质、所属功能模块、系统环境等方面进行分类和统计。
缺陷的状态
new:“新建状态”。
测试人员新建缺陷,称之为“new”状态。
open: 意为“打开状态”。
开发人员接收到缺陷后确认该缺陷,并且会打开,称之为“open”状态。
fixed:意为“修复状态”。
开发人员打开缺陷后进行修复的状态称之为“fixed”状态。
closed:意为“关闭状态”。
测试人员发现该缺陷已被开发人员修改,并且修改正确,会关闭该缺陷,称之为"closed"。
rejected:意为“拒绝状态”。
开发人员接收到测试人员新建的bug后,不认同该bug,可以拒绝修改,称之为“rejected”
postpone:意为“拖延状态”。
开发人员接收到测试人员的bug后,如遇到临时有事的情况,可以延后修复,称之为“postpone”
缺陷的严重程度
缺陷的 优先级
缺陷的分类
软件缺陷修复相关
并不是所有的缺陷,开发人员都会进行修复
开发人员拒绝修改的缺陷
程序员无法重现或者现象难以捕捉 --- 缺陷详细描述没有明确的报告以说明重现缺陷的步骤---缺陷报告程序员无法读懂的缺陷报告 ---标题
由不受信任的测试人员提出---缺陷提交人
不是所有缺陷都会修改
市场的压力使得产品最终发行有时间限制
测试人员错误理解或者不正确操作引出的缺陷(FAQ)错误的修改影响的模块较多,带来的风险较大(遗留) 修改性价比太低
缺陷报告中提出的问题很难重现
来源:51CTO
作者:qq5d3e5bae55f08
链接:https://blog.51cto.com/14473726/2452625?source=dra