• 0
  • 0
分享
  • 测出Bug就完了?教你从4个方面分析缺陷
  • 曼倩诙谐 2022-10-13 11:44:30 字数 1929 阅读 2075 收藏 0

  51Testing软件测试网正在收集测试行业问卷结果,如果你也想为测试行业的前景助力,就点击下方的链接提交答案吧,还有精美礼品等你拿(测试课程五选二)。链接:http://vote.51testing.com/


  测试团队在项目或版本测试完成后,需要对本次项目或版本所发现的缺陷做统计分析,在分析的过程中,总结项目或版本在哪些方面可以进行改进,为下个项目或版本的管理,做更好的管理和风险预防。

  分析缺陷一般从以下角度来进行:

1-1.png

  以某个项目为例,此项目共涉及6个关联系统,整个项目周期,发现的缺陷数共508个(缺陷数已按等级进行换算)。下面从各方面分析缺陷的分布情况。

  从缺陷的根本原因上分析

1-2.png

  上表中,根本原因中,各项内容的含义如下:

  文档问题

  指的是在静态测试(包括文档的正式及非正式评审)时,测试人员发现的各类文档的问题,投产手册的问题。

  程序代码问题

  程序存在各种的代码问题,程序未按需求功能实现等。

  需求分析不全

  需求分析不全面导致的部分场景或功能未实现。

  需求变更

  由于出现缺陷,导致需求需要变更。

  环境问题

  部署操作不正确;

  参数设置没按投产手册要求执行;

  控版出错(含:未与生产同步、未与上一个版本同步等)。

  数据质量问题

  不符合需求的测试数据,测试中产生的脏数据。

  项目组的问题由程序代码问题、需求分析不全和文档问题组成。

  其中,程序代码问题的占比是最高的,程序代码问题表现在:一是程序员在编码时只考虑正常场景的情况,一些异常和特殊的场景的情况都没考虑到;二是修改一个缺陷后,引出另外的缺陷。

  需求分析不全、和文档问题,加起来占比6.7%,从另一方面说明项目组不重视文档及文档质量,对功能分析不透彻。

  从以上可以看出,项目组需要加强文档编写质量、需求的充分评审和代码评审及走查。测试交付团队方面的问题,数据质量问题和环境的问题共占比9.8%,数据质量问题单项占到6.3%,这个比例偏高,测试团队应该管理好测试数据的质量,以免由于不合规的数据浪费大家的时间和精力。

  环境问题,交付团队应该在项目或是版本开始时,测试环境的配置与生产环境的配置一致,以保证测试版本的有效性,在部署时,需要与测试团队先做沟通,避免一些没有必要的环境问题。

  从缺陷发现的阶段分析

1-3.png

  测试分析阶段处于测试人员对需求文档、概要设计文档的评审(评审包括文档的测试和评审会),这个阶段的缺陷数,主要由文档问题、评审问题组成。

  测试执行阶段包括冒烟测试、第一轮、第二轮和回归测试。在这个阶段,测试团队对整个项目或是版本做全面的测试,用各种测试方法来验证项目或版本是否符合上线标准。

  冒烟测试:只对项目或是版本做主流程的验证。

  第一轮、第二轮测试,是执行所有的测试用例,对所有的功能做全面的验证,测试类型包括了功能测试、性能测试、可靠性测试、安全性测试、接口测试等等。

  回归测试是对项目或是版本做全面的回归测试,包括第一或第二轮测试过程中,本来测试通过的用例,再加上此次未改造的功能。

  补丁测试,指的是在项目或版本已经定版后,仍存在非改不可的,影响流程性的缺陷。

  各个阶段出现的缺陷数量,也可以分析项目组或是测试团队在哪个阶段是否有问题。

  从缺陷的引入系统上分析

  缺陷数已按等级进行换算:

-4.png

  系统2和系统3的改造量排名第一和第二,难道就证明了改造量大的,出的缺陷就多吗?

  也不是,像系统4的改造量只是比系统3少了10%,但缺陷数却少了3分之一。

  虽然系统与系统之间的缺陷没有什么可比性,但如果加上各个系统的开发工作量,计算出各个系统的缺陷密度,虽然可比性的不大,但是以整体来看项目组的程序质量来说,这样子有一定的可比性了。

  缺陷密度以1为基准,缺陷密度高于1的系统,可能需要分析一下程序的质量,看问题出在哪里。

1-5.png

  从测试漏检上分析

1-6.png

  此次项目上线运行一个月内,生产上出现的故障数量如上表所示。从上面可以看出,测试团队在漏检的问题上占了3个,是总故障数量的一半,且测试分析遗漏一个,用例遗漏一个,而执行还遗漏了一个,这说明测试团队的内部存在流程或沟通的问题。需要测试团队进行分析具体的原因。

  总结

  以上从各个方面来分析项目或版本的缺陷,都是希望从各种渠道来了解项目组和测试团队的情况,分析是否他们存在内部规范或是流程上的问题,需在哪一方面做进一步改进措施。

  除此之外,还能收集各团队的项目指标,与公司的基准数据做对比,看是否与之相匹配,是否存在改进的方面,能以更好的姿态去迎接下一次挑战。



作者:陆空    

来源:http://www.51testing.com/html/76/n-7793376.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   Appium框架介绍  Appium是什么?  首先,Appium 是一款开源框架,生态丰富,社区强大,一直在被开发者维护;  并且是一个灵活的跨平台的测试自动化工具,可以在iOS、Android 或 Windows、Mac 设备上进行移动应用的自动化测试运行,并且能够使用相同的 API 编写多个平台的测试脚本;  Appium与Selenium类似,是一个跨语言的自动化框架,并且可以和任何测试框架相结合;可以使用不同的编程语言编写测试脚本,包括 Java、JavaScript、PHP、Ruby、Python 和 C#。  Appium通信-各个端介...
            0 0 981
            分享
          •   互联发展是很快的,每年都会有新语言的诞生。  西瓜我,干测试已经三年了,主要负责web功能测试,java编写接口自动化,APP功能测试,APP 接口自动化(也是用的java),面过得测试也差不多30个,我主要会问技术相关和项目相关的问题来判断面试者以下几个能力:  1.语言沟通能力  2.技术过不过关  3.项目的真实性  所以我先讲面试经过,各位看官可以总结点经验:  一.面试的自我介绍  我有时候忙得来不及看简历,所以我一般会让面试者来个自我介绍,先了解一下是什么样的人,有哪些优势,然后是工作经验。  面试者会出现以下几种现象:  1.吐词不清晰;  2.说话断断续续,如果说话一段一段...
            0 0 1513
            分享
          •   最近火出圈的 ChatGPT 公司 OpenAI 发布了 Chat API 和 gpt-3.5-turbo 模型,我们现在可以通过API 来使用与 ChatGPT 一样的 NLP 模型。  使用OpenAI API,可以使用gpt-3.5-turbo构建自己的应用程序,可执行以下任务:  草拟电子邮件或其他文字内容写代码,例如Python代码  创建对话代理,回答各类问题  为您的软件提供自然语言界面  在各种学科中进行辅导  翻译语言  为视频游戏模拟角色等  待发掘的各种应用场景……  下面用 Python 来讲解如何使用 openai python SDK 实现自...
            0 0 2514
            分享
          • 1.数据准备已事先准备好5个不同用户账号2.设置线程并发数ramp-up period 指 JMeter 用于执行全部请求的时间 如果设置了 100 个线程,并且 ramp-up period 是 2 秒,那么 JMeter 将在 2 秒钟 之内启动 100 个线程.如果循环次数是 2,那么 jmeter 将在 2 秒之内发送 200 个 请求(100*2) 如果循环次数设置为永远,那么 jmeter 将以最大可能去发送请求,以此测试出 最大并发数此处采用5个并发数作为测试演示设置为5个用户并发访问注意,若设置5个用户并发访问时,需在线程组中设定,用于模拟多用户同时测试的线程数为5个。如果线程...
            0 0 3011
            分享
          •   测试圈子生态的思考  其实测试的生态,说起来蛮简单的,一个词语概括就是两极分化。有个梗:hand hands,load loads,太贴切了。  两极分化这个词,可以从下面三个维度来看:  薪资  我认识的测试也算不少,月薪上下限从8k到55k不一而足;从年薪角度来说,package10W到100W+的都有,我这里指的是单纯的技术岗位,不算管理岗在内。  而且有个特别有意思的点,绝大多数测试,薪资的天花板就是30K,对应年薪50W以内。这里的绝大多数,我可以给一个用户画像:  工作经验:5-10年;   第一学历:大专-本科;   技术能力:会写点自动化代码,工具仅限于使用,不提造轮子,能...
            0 0 1521
            分享
      • 51testing软件测试圈微信