首页 > 其他分享 >软测笔记3-【缺陷】

软测笔记3-【缺陷】

时间:2023-06-23 23:55:18浏览次数:34  
标签:软测 开发人员 测试人员 问题 笔记 软件 缺陷 bug

缺陷

1.缺陷:软件在使用过程中存在的任何问题都叫软件的缺陷,简称bug

 

2.缺陷的判定标准: 

   a.软件未实现需求(规格)说明书中明确要求的功能(少功能
   b.软件实现的功能超出需求(规格)说明书指明的范围(多功能
   c.软件出现了需求(规格)说明书中指明不应该出现的错误(功能错误
   d.软件未实现需求(规格)说明书中虽未明确指明但应该实现的要求(隐性功能错误
   e.软件难以理解,不易使用,运行缓慢,用户体验不好(不易使⽤) 

  

     用例执行:用例的执⾏结果与⽤例的期望结果不⼀致(含义),为缺陷(⽤例执⾏不通过为缺陷,需要进⾏缺陷管理)

 

3.缺陷产生的原因:

  a.需求:

    1.需求不明确:软件需求不清晰或者开发人员对需求理解不明确,导致软件在设计时偏离客户的需求目标,
      造成软件功能或特征上的缺陷

    2.在开发过程中,客户频繁变更需求也会影响软件最终的质量

  b.架构设计:

    1.如果软件系统结构比较复杂,很难设计出一个具有很好层次结构或组件结构的框架,
       这就会导致软件在开发、扩充、系统维护上的困难

    2.即使能够设计出一个很好的架构,复杂的系统在实现时也会隐藏着相互作用的难题,而导致隐藏的软件缺陷

  c.编码问题:

    在软件开发过程中,程序员水平参差不齐,再加上开发过程中缺乏有效的沟通和监督,问题累积越来越多,
    如果不能逐一解决这些问题,会导致最终软件中存在很多缺陷

  d.项目期限短:

    现在大部分软件产品开发周期都很短,开发团队要在有限的时间内完成软件产品的开发,压力非常大,
    因此开发人员往往是在疲劳、压力大、受到干扰的状态下开发软件,这样的状态下,
    开发人员对待软件问题的态度是 “不严重就不解决

  e.使用新技术:

    现代社会,每种技术发展都日新月异。使用新技术进行软件开发时,如果新技术本身存在不足或开发人员对新技术

    掌握不精,也会影响软件产品的开发过程,导致软件存在缺陷

  f.环境(硬件、软件):

 

4.软件缺陷的生命周期:

  生命周期:是一个物种从诞生到消亡经历了不同的生命阶段

  软件缺陷生命周期:是一个软件缺陷被发现、报告到这个缺陷被修复、验证直至最后关闭的完整过程

  生命周期中缺陷状态:新建-->指派-->已解决-->待验-->关闭

  在整个软件缺陷生命周期中,通常是以改变软件缺陷的状态来体现不同的生命周期的状态的变化,

  来跟踪项目进展的软件质量 

  如果待验的BUG在验证时没有解决好,我们需要重新打开--指派—已解决—待验,循环这个过程
  中间其他状态:拒绝、延期等

  简化版:

    发现-打开:测试人员找到软件缺陷并将软件缺陷提交给开发人员。
    打开-修复:开发人员再现、修复缺陷、 然后提交给测试人员去验证。
    修复-关闭:测试人员验证修复过的软件,关闭已不存在的缺陷

  详细版:

    1.发现bug:

      a.按照测试用例进行操作,发现和测试用例的预期结果不一致的
      b.还有就是成本问题,比如没有充足的时间去编写测试用例
      c.测试用例不可能穷尽,总有超出你预料之外的因素,或者是神操作出现的bug

    2.提交bug:

        在提交一个缺陷的时候,首先尽量描述这个缺陷的属性、Bug重现环境,bug类型,bug等级,

        bug的优先级以及详细的重现步骤,结果与期望等
        当然,我们在提交一个缺陷之前首先应该保证,这个缺陷是没有被提过的,以免造成重复缺陷单

    3.指派bug:   

        a.这一步不是必须的,跟项目模式有关,有些公司测试部门与开发部门独立,那么测试人员就不确定

           自己测试的模块是由哪位开发人员负责的,在这种情况下,测试人员统一把问题指派给项目组长或经理
           由项目组长(或经理)对问题进行确认后再次分配给相应的开发人员
        b.有些测试是穿插到不同研发团队中的,所以对不同的开发负责的开发模块非常清楚,

           这个时候就可以将问题直接指派给相应的开发人员
        c.也有一种情况,本来此问题应该由A开发人员负责,但由于A开发人员的调离或辞职,

           这些问题为转交给其它人员处理

        “分配”强调是上级对下级;“转交”强调的是平级之间

    4.确认缺陷:

        当开发人员接到一个缺陷时,首先是对其进行分析与重现,如果对其进行分析发现不是缺陷

          (可能由于测试人员不了解需求),或无法对此问题进行重现,那么就需要将此问题反回给测试人员
        并注明原因,如果确认为缺陷则需要对其进行处理

    5.修复BUG:

        a.推迟处理
          在处理问题之前,还需要进行一次判断,是否需要推迟处理,有些需求已经确认了是问题,

          由于其可能在极端情况下才会出现,或需要对系统架构进行改动,或其优先级非常低,

          所以暂时不需要对此问题进行处理(或到下个版本进再进行修复)

        b.固定:
          对于推迟处理的问题可以暂时进行固定(“固定”为QC中的叫法。)

          一般固定的问题需要经过项目经理与测试经理协商后才能固定。 

        处理缺陷:
          开发人员在确认完一个问题需要处理时,那么就对其进行处理工作。

          (例如,redmine 是支持处理人时时更新问题处理进度的,如 已处理30% ,已处理80% 等,

          当然,对于短时间内可以修复的问题就没必要时时的去更新处理进度。)

    6.回归验证BUG: 

        回归缺陷对于测试人员来说是非常重要的工作,其有三个入口两个出口

        a.确认非缺陷问题:对于提交的一个缺陷,开发人员处理为非问题或无法重现,

                然后直接转交给测试人员回归,测试人员再次确认,如果真如开发人员所说,

                则将问题关闭。如果非开发人员所说,是由于问题描述模糊或其它原因未重现问题,

                则再次注明原因转给开发人员

        b.确认修复问题:对开发人员修复的问题再次进行确认,确认能过,则关闭问题。

                确认不通过,将问题再次打开并转给开发人员

        c.确认固定问题:有计划的对固定问题进行确认,有些固定问题随着时间的推移,版本的更新或已经不存在了,

                对这类问题应该及时关闭,有些固定问题依然存在且变得紧急,

                对于这类问题应该及时打开交给开发人员处理

    7、关闭缺陷:   

        对于已经修复的缺陷进行关闭,这也是一个缺陷的最后一个状态

      

   注!!! 

    1、回归测试:
        ①常规项⽬回归:项⽬本次发布新增2个模块,最基本要测新增模块功能及新增模块关联的旧模块
        ②⾮常规项⽬(银⾏、部队、航天):新增功能,必须全部复测
    2、回归bug:上⼀个版本发现的缺陷,开发修复完毕,在下个版本进⾏重新验证

 

5.缺陷六大核心要素:缺陷标题、前置条件、复现步骤、预期结果、实际结果、附件备注

 

 

⾯试题:发现缺陷后,⾸先会怎么办?

确定Bug可复现、确定是Bug,提交时,要检查缺陷是否已存在

标签:软测,开发人员,测试人员,问题,笔记,软件,缺陷,bug
From: https://www.cnblogs.com/noproblems/p/17500518.html

相关文章

  • 2023年如何选购一部4000元价位的笔记本电脑(附带坑的说明)
    2023年如何选购一部4000元价位的笔记本电脑(附带坑的说明)本文是一个快速指南,不包含选购中涉及的所有知识点,尤其是大量的具体硬件参数,内容主要关注在如何快速抓住自己真正的需求,快速筛选掉不匹配的型号,从而做出适合的选择。背景条件限定:价格限制4000元+;只能在指定的电商购买;......
  • celery笔记七之周期/定时任务及crontab定义
    本文首发于公众号:Hunter后端原文链接:celery笔记七之周期/定时任务及crontab定义periodictask,即为周期,或者定时任务,比如说每天晚上零点零分需要运行一遍某个函数,或者每隔半小时运行一遍该函数,都是这种任务的范畴。在第一篇笔记的时候我们就介绍过celery的组件构成,其中有一个......
  • JAVA笔记
    三元运算符x?y:z如果x==ture,则结果为y,否则结果为zJava中的三元运算符x?y:z可以简化一些if/else语句的书写,其中x是一个布尔表达式,如果x为true,则返回y,否则返回z。该运算符也称为条件运算符或三目运算符,因为它由三个操作数组成。例如,下面的代码使用if/els......
  • [学习笔记] 强连通分量
    一、DFSForest从这张经典图说起:在给定的有向图\(G=(V,E)\)内,遍历这张图,其中边分为\(4\)种:树边(treeedge):黑色的边,每一次从\(u\)访问到一个未访问的节点\(v\),则称\((u,v)\)为树边。返祖边(backedge):红色的边,每一次从\(u\)回溯到一个\(u\)的已经访问的祖......
  • opencv 学习笔记
    1配置环境下载,可以从以下网站下载,国内镜像速度快,此次我选用4.5.4版本OpenCV/opencv_contrib国内快速下载–绕云技术笔记(raoyunsoft.com)下载安装后,记得配置环境变量,主要是程序运行时需要调用的动态库目录,此处使用的是msvc2019选vc15(给vs2017,2019使用) 配置完毕创建vs2......
  • 【js学习笔记二】innerHTML和innerText的使用
     目录前言导语代码部分 运行结果总结前言   我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从头再来歌谣的意志是永恒的放弃很容易但是坚持一定很酷导语......
  • 【js学习笔记三】数组去重的第二种方式indexof
     目录前言导语代码部分 运行结果总结前言   我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从头再来歌谣的意志是永恒的放弃很容易但是坚持一定很酷导语......
  • 最新《动手学习深度学习》配套课程视频、笔记、ppt等资源整理分享
        《动手学习深度学习》是李沐老师(AWS资深首席科学家,美国卡内基梅隆大学计算机系博士)主讲的一系列深度学习视频。本项目收集了我们在寒假期间学习《动手学习深度学习》过程中详细的markdown笔记和相关的jupyter代码。赠人玫瑰,手留余香,我们将所有的markdown笔记开源,希望在自......
  • 《雅思真经一本通》读书笔记
    听力:179考点词,七十二多变次,词组阅读真经:先看题目,根据题目定位原文,不要直接读文章阅读出题顺序跟文章顺序可能不同方法论:读三篇文章标题,大致心中有数看题型分布heading题(主旨题),段落匹配题(paragraphymatching)先不做。先做细节题找出题目的定位词,回原文阅读定位匹配题,画......
  • 听《一句顶一万句》笔记
    听樊登读书《一句顶一万句》李蕾讲经典。记录一下把。下面是解读文稿里的记录。  1.舅舅接下来讲:“如果你想改变你的命运,那就要离开这个村子,当你想要改变自己的时候,你要告别自己的过去,告别自己熟悉的地方,告别自己的故土。”我又何尝不是告别自己熟悉的地方。可能会怀念......