8.1 定义
概述:标识并描述发现的缺陷,具有清晰、完整和可重现问题所需的信息的文档。
理解:测试人员发现缺陷,将缺陷记录在《缺陷报告》中,通过缺陷报告将缺陷告知给开发人员,并对缺陷进行跟踪和管理。缺陷报告是测试人员与开发人员之间重要的沟通方式。
8.2 什么是缺陷
软件缺陷就是通常说的Bug,它是指在软件中(包括文档和程序)存在的影响软件正常运行的问题。
软件未达到产品说明书标明的功能,如一个即时通讯App不能聊天。
软件出现了产品说明书指明不会出现的错误,如高考不带身份证。
软件功能超出产品说明书指明的范围,如即时通讯App做了一个地图功能。
软件未达到产品说明书虽未指出但应该达到的目标,如一个账号的密码是明文。
软件难以理解、不易使用、运行速度缓慢或者从测试人员的角度看最终用户认为不好,如一个即时通讯App无法找不到聊天界面。
8.3 软件缺陷产生的原因
需求不明确和变更
软件需求不清晰或者开发人员对需求理解偏差,导致软件设计时偏离用户的需求目标,造成软件功能或特征上的缺陷。此外,开发过程中客户频繁更新需求也会影响软件最终的质量。
软件结构复杂
编码问题
项目期限短
使用新技术
8.4 导致软件缺陷的典型错误
错误软件缺陷
客户与软件开发人员之间交流困难缺少预期的软件功能
开发人员未注意到代码中的逻辑错误单击按钮没有进行任何操作
开发人员忘记了对文件复制代码进行错误检查复制了一份被破坏的文件,导致软件崩溃
开发人员没有理解客户的情况软件不能满足客户的要求
8.5 软件缺陷分类
8.6 缺陷报告的核心要素
八项:缺陷编号、缺陷状态、缺陷标题、重现步骤、严重程度、优先级、缺陷类型、测试环境。
1.缺陷编号
缺陷的唯一标识符
2.缺陷状态
缺陷跟踪过程的进展情况
新建:刚发现的缺陷
已指派:已经由测试人员将缺陷指派给开发人员进行处理
已打开:开发人员正在修复缺陷
已修复:开发人员完成缺陷修复,还未进行回归测试
已拒绝:发开人员拒绝修复
已延期:对缺陷进行延缓处理
已关闭:由测试人员回归测试后,缺陷不存在了
重新打开:由测试人员回归测试后,发现缺陷任然存在,
3.缺陷标题
缺陷的概述,描述问题本质
4.重现步骤
①一步一步描述再现缺陷的操作步骤
②预期结果
③实际结果
5.严重程度
缺陷对软件系统的影响程度
6.优先级
修复缺陷的重要性或紧迫性
7.缺陷类型
根据缺陷产生的来源和根源划分出的缺陷种类
功能、配置、安装、性能缺陷
8.测试环境
测试环境配置,包括软件环境和硬件环境
8.7 缺陷报告编写技巧
1、对错误的描述要做到简洁、准确、完整,揭示错误实质2、尽量使用短语和短句,避免复杂句型句式3、每个软件问题报告只书写一个缺陷或错误4、明确指明错误类型和严重程度5、每一个步骤尽量只记录一个完整操作6、复现的操作步骤要完整,准确,简短7、可以附加必要的错误特征图像8、可以附加必要的测试用例
8.8 缺陷报告模板