首页 > 其他分享 >漫谈测试成长之探索——缺陷分析

漫谈测试成长之探索——缺陷分析

时间:2022-08-22 10:13:47浏览次数:83  
标签:分析 模块 漫谈 开发 测试 维度 缺陷 Bug


回顾校园生活中,我们参加每一场考试后都会对错题进行分析总结并补缺补漏,以便能更好地去应对更重要的考试。回到软件系统开发中,我们记录和跟踪缺陷的目的是什么,仅仅是为了在软件系统开发过程中跟踪Bug直至修复么?应该不止于此。我们也可以对项目缺陷进行分析,分析其共性进而分类,从而建立项目的“错题集”,为下一次“考试”提供宝贵的经验。

如图1-1所示,通常一条缺陷记录会包含缺陷编号、缺陷标题、状态、缺陷描述、严重程度、优先级、开发负责人、测试负责人、缺陷类型、功能模块、对应版本和对应环境等信息。那么,我们可以从哪些方面来分析和总结项目的缺陷呢?

【爱测角】图1-1 软件缺陷记录示例
图1-1 软件缺陷记录示例
 

一、缺陷分析维度

如图1-2所示,我们可以按项目缺陷的严重程度维度来统计。图中分别展示了项目各个严重程度的缺陷数和缺陷占比。从图中可以看出该项目有25个严重程度为一般的Bug,占Bug总数的50%,严重程度为较小的Bug占据到了28%,严重和致命程度的Bug占总的22%。

【爱测角】缺陷分析_严重程度维度
图1-2 【爱测角】缺陷分析_严重程度维度

基于上述各类严重程度缺陷占比数据,我们可以怎么分析项目情况呢?从占比上看,本次项目的严重及以上的Bug占比不到总的1/4,说明本次开发项目的整体提测质量还是比较高的。但是,从Bug总数上看,由于Bug总数较多,严重程度较小和一般的缺陷数达到了39个,将近总数4/5。为什么会有这么多严重程度不高的Bug?

我们可以继续从缺陷类型维度分析,如图1-3所示,这里我们可以看到,功能问题类的缺陷还是占据了一半以上,同时,界面和交互问题也占据了28%,说明开发对于产品比较细节的功能点以及产品界面和交互重视和理解程度不够,导致提交测试的产品大问题不多,但是小问题不少。这部分问题是不是可以避免或者减少的呢?这就是我们要思考的了。

【爱测角】缺陷分析_缺陷类型维度
图1-3 【爱测角】缺陷分析_缺陷类型维度

为了减少下次同类问题频繁发生,我们可以在开发方案和测试要点评审节点明确各功能细节、界面和交互点。让开发人员在开发过程中尽量避免此类问题。

如图1-4所示,我们还可以从功能模块维度进度分析。从图中我们可以看到模块B和模块C的缺陷占据了总的82%,相对于模块A和模块D,我们可以理解为模块C和模块D的实现复杂度应该比较高。为了提高该模块的开发质量,这次版本交付后可以督促开发去做总结和复盘,同时下次产品迭代涉及到这两个模块的时候也要做好研发方案评审。

【爱测角】缺陷分析_功能模块维度
图1-4 【爱测角】缺陷分析_功能模块维度
 

如图1-5所示,除了从缺陷的各个角度去分析,我们也可以从开发负责人维度来分析。假定这个项目有四个开发人员共同开发,且分配给他们的任务在工作量和工作难度上没有太大的差异,从图中我们看出RD_张开发任务的缺陷数远远少于其他三个开发人员,可以说明其对需求的理解以及开发的质量意识是比较高的。可以公开对其开发能力进行肯定,也可以让其总结和分享开发经验,引导其他开发人员进行改进。

【爱测角】缺陷分析_开发负责人维度
图1-5 【爱测角】缺陷分析_开发负责人维度
 

二、总结

上文分析的缺陷数据并没有包含所有项目的缺陷情况,但是大家可以尝试去分析自己负责的模块或者是整个项目的缺陷数据,并思考可能影响项目质量的原因,进而采取一定的措施去改进。不太可能一步到位完成,但是可以持续改进,这样同样类型或者是重复出现的缺陷就会越来越少,我们也能有更多的精力去应对更有价值的缺陷。

作者简介:Chaofan,爱测角成员之一,专注探索和分享软件质量保障。
如果需要上文缺陷分析模版文件,可以浏览原文获取。
原文地址:《漫谈测试成长之探索——缺陷分析》

标签:分析,模块,漫谈,开发,测试,维度,缺陷,Bug
From: https://www.cnblogs.com/itestcorner/p/16611246.html

相关文章

  • 技术分享 | 接口测试中,请求超时该怎么办?
    原文链接A发送请求,然后等待B的响应,同时开始超时计时,如果在超时时间内成功接收到响应,则结束等待和计时。如果到了超时时间还没有接收到响应,则结束等待同时此次通讯失败,......
  • Spring Boot项目的单元测试
    引入依赖要进行单元测试,首先需要在项目中引入spring-boot-starter-test组件,配置在项目的pom.xml文件,如下:<dependency><groupId>org.springframework.boot</grou......
  • 软件测试入门八(测试需要对接口的了解)
    一、什么是接口开发方:后段开发,人们常说的Java开发使用方:前端开发,人们常说的vue、h5、安卓、iOS等等举一个简单的例子:百度搜索的接口当用户想要搜索他需要的内容时,用户......
  • 软件测试入门六(用例编写)
    一、什么是测试用例(测试case)测试用例就是测试场景,一次迭代的需求可以拆分成许多功能模块,一个功能模块可以拆分成多个功能点,一个功能点可以有多个场景,那么这个场景就是测试......
  • 软件测试入门四(测试流程)
    一、什么是项目,什么是项目迭代打个比喻:一个项目的一生就相当于人的一生,从出生到死亡,需要经历风风雨雨。不断的优化自己,丰富自己,充实自己,为了能够得到更多。那么项目也是如......
  • 软件测试入门五(环境)
    一、什么是软件环境人有人类的生存环境;软件有软件的运行环境 二、软件运行环境类型开发环境、测试环境、预发环境、生产环境开发环境:开发人员自己的环境,方便开发调试......
  • 软件测试入门三(软件bug)
    一、什么是软件bug一个手机,如果他的屏幕碎了、裂了,拐角磕碰瑕疵,这些都是手机的缺陷。软件就好比这款手机,出现了各种各样的问题,就是软件的bug(缺陷)软件在测试过程中发现的......
  • 性能测试-压测工具ab-1024个并发以下可用以及ab和wrk的优缺点
    ab全称:ApacheBench,用于web性能压力测试,ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问。ab命令对发出负载的计算机要求很低,不会占用很高CPU......
  • 软件测试入门二(了解软件)
    一、什么是软件软件:通过大代码逻辑开发出来的程序,称为软件。 二、软件的种类web端:电脑、手机的浏览器可以打开的网页,就是web的软件。比如:公司官网、淘宝网等等客户端......
  • 软件测试入门一(认识软件测试)
    一、什么是软件测试工程师软件测试工程师:研发属于产品的生产者,测试属于产品的质检人员,为了保证产品上线不会出现缺陷,测试体现了重大作用,往往将产品的缺陷在测试过程中发现......