1、软件测试缺陷基本概念和相关术语

  1)缺陷(Defect):是指存在于软件之中偏差,可被激活,以静态形式存在于软件内部,相当于Bug。2)故障(Fault):当缺陷被激活后,软件运行中出现的状态,可引起意外情况,若不加处理,可产生失效,是一个动态行为。3)失效(Failure):软件运行时产生的外部异常行为结果,表现与用户需求不一致,功能能力终止,用户无法完成所需要的应用。4)Bug:电脑系统或者程序中存在的任何一种破坏正常运转能力的问题或者缺陷,都可以称之为“Bug”;有时也泛指因软件产品内部引起的软件产品最终运行时和预期结果的偏离。5)缺陷报告单:指测试执行过程中,发现缺陷失效后,提出书面的报告,提供给开发人员作为定位缺陷的依据。

2、软件缺陷管理基本流程

下图是一个简单的BUG跟踪流程图:

  1)椭圆形中标示的都是角色(测试人员、BUILDER人员、开发人员、专家会诊)2)柱状图1:发布服务器,一般存放当前最新的软件版本柱状图2:RAID/BMS,是Bug的管理系统,测试人员发现问题都要提交到这个系统上柱状图3:邮件服务器,测试人员、BUILDER人员、开发人员、专家之间发邮件进行交流。

3、软件缺陷管理的目的

  1)保证信息的一致性;2)保证缺陷得到有效的跟踪和解决,缩短沟通时间,解决问题更高效;3)获取正确的Bug信息,利于缺陷分析、产品度量,使项目情况可视化加强。

4、软件缺陷的相关属性

@1、缺陷发现人

在提交缺陷的时候,测试人员一般是测试的发现人,便于统计分析测试人员的能力,方便公司进行绩效考核。

@2、缺陷发现时间

缺陷发现时间是一个统计的计数点,或者数据点,便于企业负责人选择合适的产品发布时间。

@3、软件缺陷的状态

  1)New:缺陷的初始状态(发现问题,提交问题,提交问题后,这个缺陷就处于New的状态)2)Open:开发人员开始修改缺陷(测试人员提交问题,开发人员接受并开始修改问题)3)Fixed:开发人员修改缺陷完毕4)Closed:回归测试通过(测试人员进行回归测试,回归测试通过,该问题改为Close状态)5)Reopen:回归测试失败(测试人员进行回归测试,回归测试不通过,该问题改为Reopen状态)6)Postpone:推迟修改7)Rejected:开发人员认为不是程序问题,拒绝缺陷8)Duplicate:与已经提交的Defect重复9)Abandon:被Reject和Duplicate的Defect,测试人员确认后的确不是问题,将Defect置为此状态

比较理想的缺陷流程:从new状态——>open——>fixed——>closed状态。

@/4、缺陷的严重程度(Severity)

是站在用户的角度,指Bug出现后对用户和系统的影响程度。

软件缺陷的严重性指软件缺陷对软件质量的破坏程度,即软件缺陷的存在对软件的功能和性能产生怎样的影响,我们可以简单地将软件缺陷的严重性划分为4个等级:致命、严重、一般、提示。

  1)致命缺陷:例如软件的意外退出甚至操作系统崩溃,造成数据丢失。2)严重缺陷:系统无法满足基本的商业要求且没有便捷可用的工作区。性能、功能或使用方面严重不达标,例如由于单功能失效引起多个功能失效。3)一般缺陷:系统能够满足商业要求。有快捷方便的工作区可供使用。性能、功能或使用方面并不是严重不达标,例如软件单个功能失效。4)提示:微小修改,希望提出建议,最好能够修正,但不是必需的。在发布准确性或实用性方面不会产生重大影响

@5、缺陷的优先级(Priority)

是站在开发/项目的角度,综合权衡修改Bug的时间、成本、技术和风险,决定Bug修改的先后顺序。

  1)优先级0(Priority 0)这类软件缺陷必须在24小时之内被解决2)优先级1(Priority 1)这类软件缺陷必须修复然后才能发布产品或者才能达到用户体验所包含的最主要目标,需要在1—2天内修改3)优先级2(Priority 2)软件缺陷应该在2—4天内被修复4)优先级3(Priority 3)如果修复这个缺陷会比较好,最好在一周内修改5)优先级4(Priority 4)发布周期内修改或者不修改

Severity(严重性)与Priority(优先级)之间的区别

  1)软件里的Bug所产生的效果不会自动的与修复它的优先级相关联。一个严重的Bug可能是那种对1%的用户来说也是不太会发生的使软件崩溃的bug。那它的优先级也比那些误操作导致的需要对每个用户每次需要重新键入一部分输入的Bug的优先级要低。因此:需要分别跟踪Bug优先级和严重性,然后进行适当的修复。Bug的重要性是由项目来决定的,不同于客户对Bug的感知。某些情况下,分别跟踪急迫的或是按照客户观点定义的Bug也是很有意义的。1)优先级与项目日程相关,严重性与标准相关。优先级表示需要优先考虑和注意的对象;由重要性顺序构建成优先级;严重性暗示需要严格遵照标准或者是高层原则,比如,一个严重的代码行为。优先级和严重性这2个词出现在Bug跟踪里。某种商业化的,问题跟踪及管理的软件工具是可行的。这些工具,随着测试工程师们逐条的输入,给予团队完整的信息,以致开发人员能明白Bug,明白Bug的严重性,重现它,并修复它。修复建立在优先级和严重性的基础上。严重性的问题按照客户的风险评估来定义,并记录于被选择的跟踪工具中。多Bug的软件会“严重”影响项目进度,依次也能导致对“优先级”重新评估和商榷。

@6、缺陷的类型

  1)从质量特性角度考虑有功能、性能、安全性、易用性、可靠性缺陷;2)从功能性角度考虑有:错误(Errors)、遗漏(Missing)、多余的(Extra)、可优化的(Improvement/Enhancement/Suggestion)缺陷;3)从缺陷产生的原因考虑有:需求规格说明书SRS、设计问题、编码问题、需求变更、设计变更、配置问题、测试问题

@7、缺陷的版本

  1)发现缺陷的版本(必须说明)2)修改bug的版本3)回归测试的版本(一般是最新版本)

@8、缺陷修改日期

是主要对开发人员进行考核的参数。

5、缺陷报告单写作

@1、完整缺陷报告单内容

一个完整的、高质量的缺陷报告单包括三个方面:简单描述、详细描述、相关附件。

  1)简单描述用一句简单的,提携纲领的描述清楚问题2)详细描述*1*描述问题的基本环境,包括操作系统、硬件环境、网络环境、被测试软件的运行环境*2*用简明扼要的语言描述清楚软件出现异常时候的测试人员的操作步骤及使用的数据*3*如果从GUI上可以反映出软件的异常,采用拷屏的方式截取界面,粘贴在问题单中*4*被测试软件运行时的相关日志文件*5*测试人员根据上述信息可以给出对问题简单的分析*6*被测试软件的版本*7*状态、严重级别*8*提交日期、提交人3)相关附件*1*GUI的拷屏图片*2*被测试软件运行的相关日志文件

@2、优秀缺陷跟踪单范例及分析

  1)简单描述-Arial、Wingdings和Symbol字体会破坏新文件。2)详细描述*1*软件测试环境为windows 2000 sp4*2*启动WordEdit编辑器,然后创建新文件*3*输入四行文本,重复输入“The quick fox jumps over the lazy brown dog”*4*选中所有四行文本,然后选择字体下拉菜单,并选择Arial*5*所有文本被转换成控制字符,数字和其他明显的随机二进制数据*6*重复3次,结果都一样3)相关附件*1*变换格式之前的文档*2*变换格式之后的文档

@3、缺陷报告的写作要点

  1)缺陷标题2)缺陷重现步骤(尽量3次重现故障)3)缺陷类型4)缺陷优先级5)缺陷严重程度

【软件测试】软件测试随手记相关推荐

  1. 笔记-信息系统开发基础-软件测试-软件测试的类型

    本题考查软件测试的类型相关知识,请参考<信息系统项目管理师教程>第3版P50 (1)单元测试 单元测试也称为模块测试,测试的对象是可独立编译或汇编的程序模块.软件构件或00软件中的类(统称 ...

  2. 按逆向思维定义软件测试,软件测试基础相关概念

    测试基础知识是2008-9-20笔记整理,大部份内容来自软件评测师教程,年限已久,有些笔记已丢失. 一,理清测试相关概念 1,质量 : 实体特性的总和,满足明确或隐含要求的能力 2,软件质量 :软件特 ...

  3. 软件测试—软件测试基础知识—(五)软件测试模型

    软件测试模型 1. 瀑布模型 瀑布模型适合于结构化方法. 软件项目或产品选择瀑布模型必须满足下列条件: (1)在开发时间内需求没有或很少变化 (2)分析设计人员应对应用领域很熟悉 (3)低风险项目(对 ...

  4. 软件测试—软件测试基础知识—(三)软件测试的原则和(四)软件测试策略

    (三)软件测试的原则 1.测试应该尽早进行,最好在需求阶段就开始介入,因为最严重的错误不外乎是系统不能满足用户的需求. 2.程序员(开发)应该避免检查自己的程序,软件测试应该由第三方(测试人员)来负责 ...

  5. 系统增删查改的软件测试,软件测试人员必掌握的增删改查之简单查询

    导读 软件测试人员在工作使用SQL语言中的查询是使用得最多的,而查询也是SQL语言中最复杂的,很多测试人员只使用到其中最简单的查询 1.数据库的使用 现在在任何项目中都有数据库存在,那么在测试过程中查 ...

  6. 云南大学软件测试,软件测试大赛云南省省赛在软件学院如期举行

    2019年全国大学生软件测试大赛云南省省赛于11月2日在软件学院1412正式开始了,各位优秀的选手已整装待发,期待在比赛中展现属于他们自己的精彩. 首先进行的是开发者大赛,赛事形式为网络赛,该项赛事分 ...

  7. 软件测试——软件测试的实质

              这一章我们要了解一些软件测试的基本常识,下面请看内容提要.             测试需要遵循一定的原则,原则如下图:              作为软件测试员必须要知道一定的常 ...

  8. P背景软件测试,软件测试的背景和发展

    软件测试的发展历史 .. 20世纪60年代(软件工程建立前),为表明程序正确而进行测试. .. 1972年在北卡罗来纳大学举行了首届软件测试正式会议. .. 1975年John Good Enough ...

  9. 软件测试 - 软件测试流程(完整版)避免当背锅侠,测试人的生存......

    目录:导读 前言 一.测试计划 二.测试设计 三.bug提交与缺陷跟踪(重要) 四.回归测试范围 五.内部沟通 六.总结 前言 软件测试是在测试中识别软件产品和服务的准确性和质量的过程.显然,它的诞生 ...

  10. [软件测试]软件测试的原则及软件质量

    十大原则: 测试是证伪而不是证真. 测试应当有重点. 事先定义好产品的质量标准,确定测试用例用例输出结果. 软件项目一启动,软件测试也就开始了. 穷举测试是不可能的. 第三方测试会更加客观,更有效. ...

最新文章

  1. Mysql内连接_INNER JOIN
  2. [BZOJ 3647]
  3. 线性回归与梯度下降算法
  4. 单摆运动属于什么现象_物理模型中的隐含条件是什么
  5. python做数据分析对数学要求_Python数据分析之Pandas
  6. C# 使用 iTextSharp 将 PDF 转换成 TXT 文本
  7. OSPF路由协议实验配置命令
  8. 多张图片合成一个pdf文件的操作方法
  9. 拼多多店铺等级怎么提升?店盈通来告诉你
  10. 旭日X3派,从零到TogetherRos的快速体验
  11. C++信息学奥赛一本通(T1413:确定进制)
  12. js处理时间戳为各种格式/js判断公历/农历/周历节日和节气
  13. 手机闪存速度排行_手机闪存性能排行
  14. 电脑远程开机控制实现 免拆机安装
  15. 制药企业的发展趋势--行业公司数据调研
  16. JavaMail 邮件附件名乱码问题
  17. 深度:从 Office 365 新图标来看微软背后的设计新理念
  18. 解决关于VS2019输入会顶掉后面字符的问题
  19. Shrinkage Loss
  20. No module named gensim.corpora

热门文章

  1. java.net.UnknownHostException: localhsot
  2. SDKMAN因为网络问题用不了怎么办?
  3. html中写模态框,Html 模态框操作
  4. 今天分享给你几个绘制Excel表格的技巧
  5. exsi rh2288hv5 驱动_华为RH2288H V5服务器windows 2012阵列卡驱动
  6. 福大软工 · 第八次作业 课堂实战+后续部分
  7. 电脑突然连不上WIFI和以太网
  8. Redis和MongoDB的区别(面试受用)
  9. 决策树在机器学习的理论学习与实践
  10. java-spring的JdbcTempldate对oracle 的CLob字段进行读和写