软件缺陷基础概念

定义

从内部看,软件确认是产品开发或者维护过程中存在的错误、毛病等各种问题

从外部看,软件缺陷是系统所需要实现的某种功能的失效或者违背

总的来说,缺陷就是问题,最终表现为所需要的功能没有完全实现,没有满足用户的需求

具体包含(程序、数据、文档)

未达到需求规格说明书中的功能

出现了需求规格说明书中指明不会出现的错误

功能超出了需求规格说明书的范围

未达到需求规格说明书中虽然没有指明,但应该到达的目标

测试人员或者用户认为软件难以理解、不易使用、运行速度慢或最终用户认为不好

表现形式

功能、特性没有实现或者部分实现

设计不合理、功能特性不明确、逻辑不清楚或者存在矛盾

产品实际结果和所期望的结果不一致

没有达到需求规格说明书所规定的性能指标

运行出错、中断、崩溃、界面混乱

数据不正确、精度不够、不完整、格式不统一

用户不能接受的其他问题,超时、界面丑陋

硬件或者系统软件上存在的其他问题

缺陷产生的原因

缺陷不可避免,主要原因如下:

需求解释或者记录错误,用户需求定义错误,需求说明存在错误,编码说明、程序代码有误,硬件或者系统存在错误,文档错误、内容不正确、拼写错误

缺陷产生的根源

交流不充分、软件的复杂性、开发任务的错误、需求的变化、进度压力

缺陷的修复费用

说明测试应该尽早介入

缺陷报告介绍

在测试后,如果发现缺陷,则应该进行缺陷报告

缺陷报告的一些字段及说明

  1. 缺陷ID:唯一的缺陷ID,可以根据该ID追踪缺陷

  2. 缺陷状态:缺陷状态指缺陷通过一个跟踪修复过程的进展情况

  3. 缺陷标题:描述缺陷的标题

  4. 缺陷的严重程度:对软件产品的影响程度,分致命、较严重、严重、一般、低

  5. 缺陷的优先级:缺陷修复的先后顺序,即那些缺陷优先修正,哪些稍后

  6. 缺陷的所属模块:缺陷所属的项目和模块,要能较精确的定位至模块

  7. 缺陷记录着:提交缺陷的人员姓名

  8. 缺陷提交时间:缺陷提交的时间

  9. 缺陷处理人:处理缺陷的处理人

  10. 处理结果描述:对处理结果的描述,描述处理情况和代码修改说明

  11. 缺陷处理时间:缺陷处理的时间

  12. 缺陷验证人:对被处理缺陷验证的验证人(回测者)

  13. 验证结果描述:对验证结果的描述(通过、不通过)

  14. 缺陷详细描述:缺陷的复现步骤

  15. 缺陷环境说明:对测试环境的描述

  16. 必要的附件:如涉及到附件的或错误现象的图片等

缺陷报告有如下作用

记录测试结果、方便开发人员进行缺陷的定位、为后期统计缺陷提供依据

缺陷报告内容

缺陷的状态

状态变化

  1. new:测试人员发现缺陷

  2. assigned:由开发经理或者其他人员,将修复职责指定为某位开发人员

  3. 开发人员阅读缺陷报告,可能得到如下结果

open:测试人员是正确的,准备修复

dupllcate:与其他bug为同一原因,修正好一个后,这个也就修复了

reject:测试人员理解错误,其实这不是bug

flxed:经过一段时间开发人员修复了bug,就会标记为此状态

postpone:小问题,目前没有时间修复

4. 测试人员检验缺陷状态

closed:再次测试,发现错误已经修复

closed reject的错误,经过沟通核实后,确认无需修复

reopen:原来修复后的缺陷,经过回归测试后又出现了,标记原先的缺陷为此状态

缺陷的跟踪

要点:缺陷从测试人员开始,也应该由测试人员结束

严重程度

严重程度分为五个等级:

  1. fatal致命的缺陷:造成系统或应用程序崩溃、死机、系统挂起,或造成数据丢失,主要功能完全丧失,导致本模块以及相关模块异常等问题

  2. critical严重错误的软件缺陷:系统的主要功能部分丧失,数据不能保存,系统的次要功能完全丧失,问题局限在本模块,导致模块功能失效或异常退出。如系统自愿占用过大,功能没有做完

  3. majoe一般的软件缺陷:次要功能没有完全实现但是不影响使用。如:提示信息不太准确,或用户界面差,操作时间长,模块功能部分失效等

  4. minor较小的软件缺陷:较小错误的软件缺陷,使操作者不方便或遇到麻烦,但它不影响功能性的操作和执行,例如:对话框弹出位置,步骤较多,输入项太麻烦

  5. enhancemental建议问题:由问题提出人对测试对象的改进意见或测试人员提出的建议、质疑。例如:错别字、颜色、按钮大小

说明:严重程度的分级并不统一,有的公司分为三个或者四个等级都是可以的

优先级

表现形式

缺陷报告书写规范

标题

简短,尽量能够体现原因和结果;准确,避免使用模糊不清的词语;便于他人理解,不要使用俚语、方言词汇

原则

完整,他人按照此步骤,即可复现问题

简明,不包含夸张、啰嗦的内容

内容

测试环境描述

步骤(加上编号,一个步骤不要包含太多步骤,可能将多个步骤合而为一,可以包含该步骤后的一个中间结果,可使用短语或短句不需要复杂句式)

实际结果清楚,不笼统

期望结果根据需求文档,应该出现的结果

附件截图、录屏、测试中需要的数据

解决方案、可能的原因(非必填),如果测试人员能够给出解决方案则更好了

常见错误

人称代词不明确;情绪化语言,强调符号;不确定词汇;幽默、梗;不确定:对于缺陷,测试人员至少需要再次操作,来重现缺陷

缺陷统计

通过缺陷统计,我们可能得出以下信息

缺陷分布:找出系统的薄弱环境

缺陷状态:根据变化,检查测试和开发的工作情况

人员水平:开发人员出错的数量,测试人员出错的数量

比较历史:对人员水平有所把握

模块难度:较难的模块出问题的可能较大

修复时间:平均修复缺陷需要的时间,越短越好

未修复的缺陷数目

作用

风险评估:能否在计划内的时间发布

缺陷原因:避免反复出现同类型的缺陷

员工技能提升:根据开发和测试人员表现出来的问题,可有针对性提升

团队配置:根据缺陷修复时间,可知道团队配合强弱

指标

单位时间(天/周)内报告的缺陷数目

单位时间(天/周)内修复的缺陷数目

累计缺陷报告数量

累计缺陷修复数量

不同严重性的缺陷数

模块与缺陷的对应关系

缺陷密度

单位缺陷数量/kloc(kilo ines of code)计算   千行代码缺陷数量

总缺陷数量/总代码行数/1000

缺陷报告的原则和重要性

重要性

节省开发和测试人员的沟通时间、提高缺陷修复速度、提高测试人员的声誉、加强协同工作

原则

  1. 5C准则

准确:每个组成部分的描述准确不会引起误解

简洁:只包含必不可少的信息,不包含任何多余的内容

清晰:每个组成部分的描述清晰,易于理解

完整:包含复现该缺陷的完整步骤和其他本质信息

一致:按照一致的格式书写全部缺陷报告

2. 一个缺陷一个报告

便于分配、便于验证

常见缺陷的查找方法

UI(非重点)

色彩,大小,布局,图片,字体

时间

网络传输,数据未压缩,解析困难

文字内容

描述不清楚不正确,有语病、错别字,太复杂,乱码

容错处理

性能缺陷

花费时间长,资源占用多,卡顿,开发差,延迟高

缺陷的修复

不是所有的“缺陷”都是缺陷

无法重现或者难以捕捉;缺陷报告中没有复现步骤;缺陷报告无法理解;极少使用的功能,或者不符合用户习惯、惯例;由不受信任的测试人员提出

不是所有的缺陷都会修改

上线时间有限制;不正确的操作;涉及模块太多,可能导致按下葫芦浮起瓢的情况;性价比太低;极难重现

缺陷的管理过程(了解)

软件测试---缺陷、缺陷报告相关推荐

  1. 软件测试工程师-缺陷报告

    缺陷报告 1.缺陷报告注意事项 (1)尽量保证缺陷可以重现 (2)简洁.准确.完整 (3)一个缺陷报告只写一个缺陷 2.缺陷书写规范 (1)标题简洁.提供缺陷的本质信息即可 (2)复现的步骤要详细,用 ...

  2. 软件测试基础----缺陷

    软件测试基础----缺陷 缺陷的定义:★★★★ 产生缺陷的原因: 缺陷的类型: 缺陷的严重程度:★★★★★ 缺陷的修复优先级:★★★★★ 缺陷的状态: 缺陷的来源: 缺陷的根源: 缺陷的识别: 缺陷的 ...

  3. 软件测试——系统测试总结报告模板

    软件测试--系统测试总结报告模板 目录 编写目的 背景 用户群 定义 测试对象 测试阶段 测试工具 参考资料 测试概要 进度回顾 测试执行 测试用例 测试环境 网络拓扑 测试结果 Bug趋势图 问题类 ...

  4. 软件测试网上课程设计,软件测试课程设计报告

    <软件测试课程设计报告>由会员分享,可在线阅读,更多相关<软件测试课程设计报告(13页珍藏版)>请在人人文库网上搜索. 1.黄淮学院软 件 测 试 技 术课程设计报告测试项目: ...

  5. 如何写软件测试的归档报告?

    软件测试是产品研发的重要环节,虽然不似编程与设计那样复杂,但是软件测试非常注重工作流程以及归档总结. 一般情况下软件测试之前需要根据软件的特性制定整体的测试计划,包括业务处理的过程以及整个软件测试的重 ...

  6. 2021软件测试行业问卷调查报告 20 条思考

    2021软件测试行业问卷调查报告 20 条思考这篇文章,基于「2021 软件测试行业调查问卷的数据 + IDO老徐 行业观察 + 过往数据分析」所得,供参考 .https://mp.weixin.qq ...

  7. 软件测试黑白盒报告,软件测试黑盒实验报告

    <软件测试黑盒实验报告>由会员分享,可在线阅读,更多相关<软件测试黑盒实验报告(5页珍藏版)>请在人人文库网上搜索. 1.实验二1引言1.1编写目的练习使用黑盒测试.1.2项目 ...

  8. 工资软件测试白盒测试报告,软件测试白盒测试实验报告

    <软件测试白盒测试实验报告>由会员分享,可在线阅读,更多相关<软件测试白盒测试实验报告(7页珍藏版)>请在人人文库网上搜索. 1.西南科技大学计算机学院实验报告实 验 名 称 ...

  9. 缺陷调研报告_实例!软件缺陷数据度量和分析

    缺陷报告,是软件测试这个职位最重要得产出之一.甚至对软件测试这个行业你可以用比较狭隘的描述去定义他为:'测试就是为了找到缺陷'. 测试人员报出的缺陷,可以很好的反应产品中的问题,修复了这些问题,就可以 ...

  10. 软件测试中缺陷的生命周期s,软件缺陷生命周期

    这个图片看起来很复杂,但是只要考虑到缺陷生命周期中的这些重要步骤,你很快就会明白缺陷生命周期的含义了. 记录完了缺陷之后,开发人员或者测试经理就会去检查这些缺陷报告.测试经理可以把缺陷状态设置为&qu ...

最新文章

  1. 开发和使用Web用户控件
  2. ArcGIS Engine开发前基础知识(4)
  3. 【链表】BZOJ1588: [HNOI2002]营业额统计
  4. it项目经理带一个项目的完整_如何控制IT项目需求范围?千万别让用户把你带沟里……...
  5. Qt添加类文件编译后,再添加宏Q_OBJECT
  6. matlab中if可以判断或语句吗,matlab中if 语句后面的判别式不能是算术表达式?或者说变量?...
  7. catia知识工程_【开团】CATIA超全直播课程&实例讲解!
  8. python学习day33 hmac模块 socketserver模块
  9. [转]rails常用验证方法
  10. 清华大学计算机专业在职博士吧,清华大学在职博士含金量高吗?
  11. 数据仓库的分层,你知道吗?
  12. 基于微信小程序的竞赛管理系统
  13. 【路径规划】基于蚁群算法求解带时间窗车辆路径问题(VRPTW)matlab代码
  14. Python之计算机算法基础总结(借鉴、整理)、排序算法、查找算法
  15. 特种期货开户交易权限开通认定标准
  16. FPGA之三八译码器
  17. 硬核,创业公司就应该技术选型 Spring Cloud Alibaba, 开箱即用
  18. 使用Kieker(AspectJ)监控控制台程序
  19. linux 3.0实时性,如何1分钟内对 Linux 性能快速分析(113资讯网)
  20. php中where条件whereRaw,「laravel whereRaw 和 where(DB::raw(''))」- 海风纷飞Blog

热门文章

  1. 软考高级证书哪个好考?零基础看过来
  2. Viewport介绍
  3. 【编程之美】如何将代码写得像诗一样优雅?
  4. 共轭梯度法(Conjugate Gradients)(2)
  5. linux怎么清空历史记录,linux清空历史记录
  6. 灵敏度分享码显示服务器不可用,和平精英灵敏度怎么调 S12最稳灵敏度分享码一览...
  7. Java 核心技术(第八版)卷1:基础知识:例14-4P620BounceThread
  8. 远程灵活工作爆发式增长,甜薪工场提供精细化供需匹配
  9. FirstDay-Diglog对话框
  10. 电子邮箱格式怎么写?电子邮箱的格式谁家选择多?