一、 软件缺陷的判定

1 什么是缺陷

软件存在着不符合质量需求或违背软件用户、客户、企业意愿的问题,这就是软件缺陷
(Defect),又叫“Bug(臭虫)”。

2 软件缺陷的判定准则

软件未达到产品说明书标明的功能;
 产品说明书简称为说明(spec)或产品说明(product spec),是软件开发小组
的一个协定。它对开发的产品进行定义,给出产品的细节、如何做、做什么、
不能做什么。这种协定从简单的口头说明到正式的书面文档有多种形式。
软件出现了产品说明书指明不会出现的错误;
 如金融软件 7*24 工作不能宕机
软件功能超出产品说明书指明范围;
软件未达到产品说明书虽未指出但应达到的目标;
 如软件在断电时的意外处理
软件测试员认为软件难以理解、不易使用、运行速度缓慢,或者最终用户认为不好。
 主要体现在易用性方面。

3 软件缺陷的表现形式

 用户要求的功能、特性没有实现或部分实现。
 运行出错,包括运行中断、系统崩溃、界面混乱等。
 数据结果不正确、精度不够、不完整或格式不统一。
 文字显示内容不正确或拼写错误。
 系统性能低下、系统资源浪费。

4 分离和再现软件缺陷

 发现缺陷后,应该做好分离和再现,排查发现的“缺陷”是不是软件本身的问题,
然后才能提交。
再现 3 次
 重现
 复现

5 避免提交缺陷的缺陷和重复缺陷

缺陷的缺陷
 是测试人员提交的不是缺陷的缺陷;
 是一种无效缺陷;
 此类缺陷常使测试人员遭受指责。
怎么办
 正确理解需求;
 做好复现。
重复缺陷
 同一个缺陷 A 测试工程师提交后,B 测试工程师又提交或者自己提交的缺陷
与之前提交的缺陷相同或类似;
 是一种无效缺陷;
怎么办
 尽量避免两个人同时测试同一模块;
 自己提交的缺陷与自己的重复,提交前查找一下,增强开发知识。

6 处理无法再现的缺陷

 首先,对这样的缺陷进行详细的记录,使用不同办法去尝试复现。
 其次,要合理地安排时间,要考虑到测试项目的整体进度,对一时难以再现的缺陷
可以暂时搁置,以保证项目的正常进度,并尽快提交给开发人员。
 最后,在测试过程中对未再现缺陷予以关注。

7 处理有争议的缺陷

 跟有关人员进行沟通、讨论;
 搁置。

二、 提交缺陷报告

1 什么是缺陷报告

缺陷报告是对缺陷进行记录、分类和跟踪的文档。

2 缺陷报告的读者对象

 软件开发人员
 报告缺陷是为了缺陷得到修复。
 希望获得缺陷的本质特征和复现步骤。
 质量管理人员、市场人员、技术支持人员
 希望获得缺陷的严重程度和分布情况,以及对市场和用户的影响程度。

3 缺陷报告的写作准则(5C )

Correct(准确)
 每个组成部分的描述准确,不会引起误解;
Clear(清晰)
 每个组成部分的描述清晰,易于理解;
Concise(简洁)
 只包含必不可少的信息,不包括任何多余的内容;
Complete(完整)
 包含复现该缺陷的完整步骤和其他本质信息;
Consistent(一致)
 按照一致的格式书写全部缺陷报告。

4 缺陷报告的组织结构

 缺陷的标题/缺陷摘要/缺陷概述/缺陷基本信息
 预处理
 复现步骤
 期望结果
 实际结果
 缺陷的严重程度
 缺陷的优先级
 测试的软件和硬件环境
 测试的软件版本
 缺陷的类型
 注释文字和缺陷截图

5 缺陷报告的写作要求

5.1 缺陷标题

 尽量按缺陷发生的原因与结果的方式书写;
 执行完 A 后,发生 B;
 在什么地方,做了什么事情,出了什么结果;
 使用“在…以后”,“在…时候”或“在…期间”等连结词有助于描
述缺陷的原因和结果。
 避免使用模糊不清的词语;
 为了方便搜索和查询,尽量使用关键字;
 为了便于他人理解,避免使术语、俚语或过分具体的测试细节。

5.2 复现步骤

 提供测试的预备步骤和信息;
 步骤完整,准确,简短,没有缺漏任何操作步骤,没有任何多余的步骤;
 将常见步骤合并为较少步骤;
 简单地一步一步地引导复现该缺陷;
 每一个步骤尽量只记录一个操作;
 每一个步骤前使用数字对步骤编号;
 尽量使用短语和短句,避免复杂句型和句式;
 只记录各个操作步骤是什么,不要包括每个步骤的执行结果。

5.3 预期结果

 软件应该具有的结果,或者说正确结果应该是什么样子。

5.4 实际结果

 实际结果的描述要列出具体的表现行为,而不是简单的指出“不正确”或“不起作
用”。
 如果一个动作产生彼此不同的多个缺陷结果,或者一个动作将产生一个结果,而这
个结果又产生另一个结果。为了易于阅读,这些结果应该使用数字列表分隔开来。
如实际结果:
 1.显示“命令代码行…错误”;
 2.显示“并且终止…服务”。

5.5 注释/ 截图

可以包含以下各方面的内容:
 截取缺陷特征图像文件;
 测试过程所使用的测试文件;
 测试附加的打印机驱动程序;
 再次描述重点,避免开发人员将缺陷退回给测试人员补充更多信息;
 再次指明该缺陷是否在前一版本已经存在;
 多个平台之间是否具有不同表现;
 注释包含缺陷的隔离信息,指出缺陷的具体影响范围。
如,缺陷的注释可能包含下面的内容:
 能在 Win2000 和 WinXP 文本框中显示文本内容,但不支持 Win98
 屏幕刷新后,现象会消失。
 使用二进制文件,不存在该错误。
 参见附加的使用说明书和测试文件。

测试开发之缺陷报告上篇相关推荐

  1. 测试开发之缺陷报告下篇

    三. 缺陷的分类 1 缺陷的分类标准 2 根据缺陷类型对缺陷分类  功能缺陷  界面缺陷  文档缺陷  代码缺陷  算法错误  性能缺陷 3 根据缺陷的等级对缺陷分类 A 类-致命缺陷,包 ...

  2. 编写优秀缺陷报告(Bug report)的艺术

    Bug report的核心是对错误的描述,而优秀的bug report对反映测试小组真实的和可理解的工作质量同测试本身一样都是非常重要的.那么什么样的缺陷报告才是优秀的缺陷报告呢?这里我引用一位测试界 ...

  3. 测试开发知识点整理(二)

    软件测试基础 软件测试的概念 63.软件测试的重要性 64.软件测试的对象有哪些(掌握) 65. 软件测试的目的是什么(掌握) 66. 软件测试的依据是什么(掌握) 67.软件需求的类型及软件需求分析 ...

  4. 软件测试——缺陷报告的编写

    1 软件缺陷 缺陷是一种泛称,它可以指功能的错误,也可以指性能低下,易用性差等 并不是所有的测试人员都能提交被开发认可的缺陷,也不是测试人员在任何时候都能提交被开发认可的缺陷 2 什么是软件缺陷 软件 ...

  5. 有关python的参考文献_测试开发论文,关于Python在嵌入式项目中的辅助开发相关参考文献资料-免费论文范文...

    导读:本文关于测试开发论文范文,可以做为相关论文参考文献,与写作提纲思路参考. 摘 要:嵌入式系统设计开发过程中常会遇到诸如算法分析.原型验证.自动化测试.辅助工具设计等工作,其开发效率和质量直接影响 ...

  6. 敏捷开发和测试中重现缺陷和验证缺陷的解决方案(2)

    第二步:静默录制脚本 创建好项目之后,我们就不再需要 RFT 图形界面了,而是使用静默方式录制缺陷重现脚本. 静默方式录制脚本的优点在于不需要操作者对 RFT 有太多了解.只需简单一个命令及几个按钮动 ...

  7. [ 测试管理 ] 如何描述缺陷报告?

    一个规范的缺陷报告有助于开发快速定位缺陷,否则只会增加无谓的测试与开发间的沟通成本.那如何描述一个缺陷报告? (1)缺陷标题,用一句话描述清楚(Problem).标题可以带上发现缺陷的测试版本和特性或 ...

  8. 关于“测试缺陷报告”日常总结

    缺陷报告基础* 一,缺陷的概念:英文defect,软件或者程序中存在的错误或者问题,表现为产品的功能没有满足需求. 二,缺陷的范围定义: 1) 软件没有达到需求规格说明书要求的功能. 2) 软件出现需 ...

  9. 华为软件开发云测评报告三:测试管理

    往期文章: 华为软件开发云测评报告一:项目管理 华为软件开发云测评报告二:代码检查 体验环境 体验方式:PC端 系统:Windows 64位 浏览器类型:Chrome浏览器 浏览器版本:58.0.30 ...

最新文章

  1. FreeSWITCH与PSTN对接
  2. shedlock mysql_ShedLock日常使用
  3. linux c之加入了加入原文件 math.h调用abs()函数出现implicit declaration of function错误
  4. 1079 Total Sales of Supply Chain(甲级)
  5. windbg学习----r?
  6. 在自己的电脑上搭建服务器(可供对外访问)
  7. zabbix无效监控项_使用zabbix模板监控tomcat-解决模板部分监控项不生效问题
  8. 学习linux/unix编程方法的建议-转
  9. CDH(Cloudera)与hadoop(apache)对比
  10. 《MySQL技术内幕(SQL编程)》——数据类型
  11. SpringMVC源码总结(八)类型转换PropertyEditor的背后
  12. matlab仿真建模,matlab系统建模仿真.ppt
  13. Eclipse插件开发
  14. 关于数据库工作方面的一些感悟
  15. 化妆品公司mysql_化妆品网站销售管理系统的设计与实现(SSH,MySQL)(含录像)
  16. 多核 CPU 和多个 CPU 有何区别?
  17. 硬纪元干货|视+AR联合创始人涂意:AR将是下一代计算平台
  18. ARM+llinux系统移植3G拨号上网收发短信(一)
  19. dream on!!
  20. matlab 指数分布检验,如何使用Matlab检验数据服从什么分布

热门文章

  1. Bella团队正在进行Flex Saving v2上线最后的准备工作
  2. 美元指数DXY短线走高10逾点,现报90.77
  3. SAP License:关于集团管控模式的几点思考
  4. MySQL高级知识(七)——索引面试题分析
  5. Selenium的定位元素
  6. Linux软件包安装和卸载
  7. linux 下 多进程与多线程
  8. 如何让putty像secureCRT一样支持多标签 - 趁我还年轻 - 博客频道 - CSDN.NET - Opera
  9. 疯狂java学习笔记之面向对象(三) - 方法所属性和值传递
  10. BizTalk接收消息后路由失败