目录
一、软件缺陷
1.1 软件缺陷的定义
软件缺陷,往往被称之为bug。计算机软件或程序中那些导致系统或部件不能正常运行,不符合用户需求的缺陷。
1.2 什么样的软件问题可以称之为软件缺陷
- 软件未达到铲平说明书说明的功能
- 软件出现了产品说明书,说明不能出现的错误
- 软件功能超出了产品说明书指明的范围
- 软件未达到产品说明书虽未指明但应该达到的目标
- 软件难以理解、不宜使用、运行速度缓慢或者从测试人员的角度看最终用户认为不好
1.3 软件缺陷的案例描述
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.4 缺陷报告的八大要素(重点)
缺陷编号,是缺陷的唯一标识符,在禅道之类的缺陷管理工具中一般都会自动生成,这个大家不用纠结。
缺陷状态,是缺陷跟踪过程的进展情况,缺陷工具都会有相应的流程和状态标识,一般不需要我们去选择。
缺陷标题,是缺陷的概述,最好能一针见血的揭示出该缺陷的本质,这个需要后续多练习。
重现步骤,就是一步一步描述再现缺陷的操作步骤,基本要求就是开发人员按照步骤能重现Bug就可以。
严重程度,就是缺陷对软件系统的影响程度,有些影响较大,有些影响较小。
优先级, 就是修复缺陷的重要性或紧迫性,即哪些缺陷需要紧急修复,哪些缺陷可以后续再修复。
缺陷类型,就是根据缺陷产生的来源和根源划分出的缺陷种类。
测试环境,主要是测试环境的配置,包括操作系统和浏览器。
1.4.1 缺陷编号
在这里就不详细,一般缺陷管理工具自动生成
1.4.2 缺陷状态
按照缺陷的正常处理流程,包括新建、已打开、已指派、已修复或已解决和已关闭这五个状态 对于禅道管理软件的Bug状态,目前只有三种:激活、已解决和已关闭 对于这些缺陷状态,大家不需要纠结,一般缺陷工具会自动标识
1.4.3 缺陷标题
对缺陷或错误特征的概要描述,可以使用短语或短句,要求简练、准确
1.4.4 重现步骤
第一部分,描述该缺陷重现的操作顺序,要求:完整、简洁、准确;第二部分,描述实际出现的结果;第 三部分,描述预期想要的结果
1.4.5 严重程度
严重程度一般分为关键的、主要的、次要的和无关紧要的。
“关键的”属于最严重的,主要是缺陷影响关键功能,例如崩溃、死机,主要业务流程不能跑通;
• “主要的”意思是缺陷影响主要功能;
• “次要的”的意思是缺陷影响次要功能;
• “无关紧要的”意思是缺陷不影响功能。
1.4.6 优先级
优先级一般分为紧急、高、中和低
紧急的意思就是必须立即修复/在下一次构建中修复;高的意思是必须在任何即将发布的版本中修
复;中的意思是可在发布后/下次发布时修复;低的意思是能修复,也可能不修复
1.4.7 缺陷类型
缺陷类型按照一般分类可以分为16类,禅道软件中分为10类
1.4.8 测试环境
测试环境按照一般分类可以分为操作系统、浏览器和手机型号3类。
对于C/S结构的软件,测试环境只会选择操作系统即可,对于Web软件,测试环境主要选择浏览器,对
于移动端软件,相对较复杂,测试环境这三类一般都需要选择。
1.4.9 其他要素
版本就是我们发现的缺陷所在的软件版本,一般是软件版本加上该版本的构建号。 分派给就是将发现的缺陷分配给相关的人员。
所属项目/模块就是发现的缺陷所属的产品、项目和模块。
提交人和提交时间就是字面意思。
附件就是通过上传图片或视频,可以更好的补充说明这个缺陷。
1.5 Bug生命周期
首先测试人员提交Bug,这时Bug的状态标识为“新建”;开发经理确认后将Bug分配给相关的开发人
员去处理,此时Bug状态为“已打开”;开发人员拿到指派给自己的Bug,开始进行处理,开发人员已经
修复了该Bug后,设置Bug状态为“已修复”;测试人员拿到已经修复的Bug进行验证,如果验证通过,则
将该Bug设置为“已关闭”状态;如果验证未通过,则将该Bug设置成“重新打开”。
1.6 缺陷的八大状态(了解)
新建状态,是指新发现的缺陷提交到缺陷库,还未进行任何处理。
已指派状态,是指将缺陷指派给负责的开发人员。
已打开状态,是指缺陷已确认可以开始修复。
已修复状态,是指开发人员将缺陷解决了。
已拒绝状态,是指开发人员认为不是缺陷和不认可的缺陷。
已延期状态,是指短期内无法解决的缺陷。
已关闭状态,是指测试人员将已修复的缺陷在新版本上验证通过了。
重新打开状态,是指测试人员将已修复的缺陷在新版本上验证,发现问题依然存在