以下内容均个人总结,请尊重原创,转载请注明出处,谢谢

一、概述

对测试期间的测试工作和测试数据做简单复盘,目的在于从数据中找到项目管理过程中存在的问题,并对问题进行解决或对项目过程做优化。

先简单介绍下站在测试角度的复盘过程。

1、复盘数据说明

As we knows, 测试应该尽早参与到项目中,应该从需求接收阶段就开始介入,然后经过需求分析 → 测试分析 → 测试设计(用例)→ 测试执行 → 项目上线 → 测试总结 这些阶段后,测试可以积累到【 需求、用例、缺陷 】这3大块数据,这3类数据就是测试用于复盘的重要数据。一般来说,我会对这3类数据做以下维度的复盘(需要注意的是,复盘并不是在最后一个阶段“测试总结”才做的事情,在项目进程中,就应该阶段性的使用这些数据进行小范围复盘;其次,复盘也不是一定要做的,当你觉得缺少数据帮你发现问题、说明问题严重性、做决策的时候,就可以用下面的数据做分析、复盘):

(1)【需求】

首先,从【需求】这类数据,我们可以知晓,项目整体共划分了几个迭代?每个迭代有多少需求?

我会有意识的统计和收集,每个迭代计划要实现的需求是哪些?计划要提测的需求是哪些(因为有些需求可能不需要提测)?达到提测时间后实际提测的需求是哪些?未提测的需求后续计划是怎么样的?以及该迭代测试完成后,实际测试通过的需求是哪些?没有测试通过的需求后续计划是怎么样的?

需求总数

计划提测需求数

实际提测需求数

需求测试通过数

需求提测率

需求测试通过率

迭代1

迭代2

总计

表A

当一个迭代即将结束或项目要上线的时候,通过这个表格,我们可以了解项目任务的完成情况,这些具体的数据可以帮助我们清晰的梳理出每一项任务的测试情况,如果有需求未提测或测试不通过,需要进而进一步分析风险是什么,按目前提测的、测试通过的需求是否可以上线.....

(2)【用例】

这类数据,我更多的应用在测试过程把控,同时可以作为衡量研发提测质量和项目质量的指标之一

在测试执行过程中,每天测试结束后,我需要知道总体的测试进度是多少?是否有阻塞?如果没有用例执行数据衡量的话,我们一般通过“感觉”去判断,然后给出一个进度,但如果测试的体量比较大的话,精确的执行数据会帮助我们的更好把控测试进度和风险。

在每一轮的测试执行过程中,我会用以下表格(表B)管理我本轮的测试数据:

模块

用例总数

有效用例总数

已执行

通过数

通过率

失败数

阻塞数

进度(已执行/有效用例总数)

取消数

未执行数

模块A

模块B

总计

表B

每一轮测试结束后,我会用以下表格(表C)管理我每轮测试的数据,除此之外,最好保存每轮测试的测试用例源文件(下一轮测试不要直接在上一轮的测试文件里修改),因为每轮“取消”、“阻塞”备注的原因可能不一样,最好保持源文件,以便我们在做最后的全局复盘的时候,可以根据需要找出当时的原因。

在这份表格里,我首要关注的是,每个迭代首轮的测试通过率,这个指标可以帮助我们衡量研发的开发质量,我觉得将研发开发质量划分为以下4个等级,还是很合理的:

  • A 优秀:  通过率 >=90 %

  • B 良好: 90% > 通过率 >=80%

  • C 合格:   80% > 通过率 >=70%

  • D 差:  通过率 < 70%

研发的开发质量说明了项目质量,项目质量当然是越高越好啦

其次,公司一般会要求研发自测,并在提测的时候提供自测用例执行情况(自测用例可以由研发自己写,也可以由测试提供)。
假设某功能,测试共设计了100条用例,其中20条标记为研发自测用例,研发承诺这20条用例都通过,才提测。则提测后,测试执行完这100条用例,统计下研发提测时承诺通过的20条用例,实际通过情况是怎么样的,比如20条用例中,经过测试后发现实际通过的只有10条,则10除以20这个指标则可以帮助我们衡量研发的自测质量。

这个指标,可以叫做,研发自测用例实际通过率。一般而言研发自测用例实际通过率要≥95%,才算自测良好。

轮次/迭代

提测时间

有效执行用例总数

用例通过数

测试通过率

用例阻塞数

异常取消数

第X轮/XX迭代

本列指因需求变更等原因导致的取消

表C

表格B、C字段说明:

  • “用例总数”是指测试人员设计的全部用例数,“有效用例总数”是指最终执行的用例数。在测试执行过程中,可能有些测试设计与需求不符,或者需求变更和删除不需要测试了,或者需求在本轮未提测等原因,则把这类已经被设计好的用例标记为“cancel”(需要在备注中说明cancel原因),归到“取消数”中。因需求不符、需求删除、需求变更而被取消的需求数不应太多,太多则需要引起注意:是否测试、研发、产品之间的协作有问题?是否因沟通不及时导致在测试执行过程中过多用例被取消?

  • 阻塞数是指在本轮测试时间内因其他缺陷阻塞无法测试的用例,需要备注说明阻塞原因

(3)【缺陷】

最后是关于【缺陷】,这个阶段的数据最重要,不仅可以用于衡量研发提测质量,跟重要的是可以帮助我们发现流程、协作上的问题。项目前期埋的坑,在这个阶段基本都会暴露出来。但这个数据需要研发、测试共同按规范去维护,不然可能会不准确。

基本的缺陷分析维度:缺陷总数、缺陷修复率、缺陷等级分布、缺陷重新打开的个数和次数、缺陷类型

分析维度

说明

缺陷总数和缺陷修复率

迭代/项目的缺陷总数是多少?已关闭多少?未关闭多少?缺陷修复率=已关闭/缺陷总数
严格的项目管理,需要规定要迭代或上线的准出条件,其中之一就是缺陷修复率要≥95%,如果有遗留问题需要评估遗留问题的风险,总之就是评估是否能带着这些遗留问题进入下一个迭代或者上线,并且需要明确遗留缺陷的修复时间

缺陷等级分布和严重缺陷占比

统计致命、严重、中等、轻微、建议(一般都是这个5个等级)的缺陷数量,其中严重缺陷占比不能超过8%(超过则表示研发质量一般,且需要做进一步原因分析),同时也需要关注其他等级的缺陷修复,如果某一等级缺陷分布过多,需要具体进一步分析原因,比如轻微+建议的缺陷特别多,可能是研发没有对这块进行自测或产品提供的交互不合理等,那测试就要给相关角色提问题、提需求

缺陷重新打开的个数和次数

返工是一种浪费,倡导一次性将事情做正确。通过这一指标来度量开发人员一次性正确修复缺陷的能力(研发的缺陷修复效率)。
同时这个指标可以帮助衡量研发和测试的协作是否顺畅、测试人员提的缺陷是否准确等问题
统计迭代内缺陷被重新打开的个数和次数,将每个迭代的数据做一个趋势图,通过看趋势,帮助我们看团队问题是否得到改善。

缺陷类型

测试过程中发现的缺陷一般分为如下几类:
功能问题:不满足需求、功能实现错误;对产品或项目质量有影响的bug可统一划入;
设计缺陷:页面美观性、交互友好性、错别字等
用户体验:对产品、项目的建议性意见,不强制要求修改
性能问题:进行性能测试时使用,如:网络延时、内存问题、CPU占用、硬盘问题
安全问题:业务功能存在的安全问题
接口问题:  涉及有模块间数据传递时使用
配置问题:  由于提供的配置不当或者配置不能够满足实际要求而出现的问题

假设从缺陷等级分布统计中,发现“轻微+建议”的缺陷比较多,我们可以通过缺陷类型进一步分析,这两个级别的缺陷类型是什么

如果大部分缺陷类型集中为功能性,可能揭示了团队在其余质量指标的关注不足

缺陷解决方案分布

解决方案一般分为以下几种:
已解决:研发按缺陷描述修复了缺陷
延期解决:延后处理
设计如此:无需改动
重复bug:已有记录同样的bug
外部原因:非本系统原因
无法重现:按复现步骤复现不了的bug
不予解决:因其他原因不予解决的bug

特别说明:其中“已解决”和“延期处理”的bug视为有效bug。如果无效bug数量过多,需要引起注意,具体进一步分析原因,是否测试对需求理解存在较多偏差?是否测试人员对缺陷的描述不够准确?

无效缺陷分析:软件测试中的无效缺陷率分析 - 51Testing软件测试网

缺陷模块分布

这个模块帮助我们看到每个模块的缺陷情况,从模块缺陷分布可以看出,哪个模块的代码质量最好

缺陷生命周期

缺陷从创建到关闭的时间统计,反映缺陷修复效率问题,特别是级别高的缺陷,是否被及时得到解决?

缺陷趋势分析

缺陷趋势可以是每日新增(new)、每日关闭(closed)、累计活跃的(all-active),累计关闭(all-closed)、bug总数的,通过分析缺陷增长和减少的趋势,分析来了解测试的效率和开发修复bug的效率、测试瓶颈、测试延期原因、测试生命周期等。
(1)其中每日新增(new)趋势分析来了解测试的效率,正常看,提测准入通过的1-2天后每日新增应该在一个高峰值,总体呈下降趋势,最后趋向于0。整个测试周期,80%+的bug发现在测试周期中前期,测试后期甚至回归测试的bug新增数趋于平稳到0,可以说明测试效率是比较高的,测试质量较高,且开发修复bug新引入bug的概率是比较小的
(2)每日关闭(closed)趋势反映了开发对bug处理响应快,修复bug效率高,累计活跃的(all-active)bug得到收敛
(3)如果新建的bug越来越少,但关闭的bug曲线一直在打开bug下面,说明,瓶颈在研发那边,他修改bug的效率过低
(4)bug总数曲线和累计关闭(all-closed)应该呈对数曲线,坡度应当逐渐变缓,最后无限接近并且重合
(5)如果累计活跃的(all-active)bug上升的坡度一直很陡,说明整个团队中,bug的平均生命周期长,越平滑越好。

本指标分析摘抄自:浅谈通过缺陷分析进行项目质量分析 - 简书

表D

软件测试复盘思路个人总结相关推荐

  1. 手机应用软件测试的思路与要点

    软件测试主要针对于移动互联网行业,那么APP等相关软件的测试工作是非常多的,尤其对于产品的手机项目(应用软件),主要是进行系统测试.针对手机应用软件的系统测试,通常从如下几个角度开展:功能测试,兼容性 ...

  2. 【华为OD机试真题 java、python】硬件产品销售方案(100%通过+复盘思路)

    代码请进行一定修改后使用,本代码保证100%通过率,本题提供java.python两种代码.复盘思路在文章的最后 题目描述 某公司目前推出了AI开发者套件,AI加速卡,AI加速模块,Ai服务器,智能边 ...

  3. 【华为OD机试真题 java、python、c++】字符串解密(100%通过+复盘思路)

    代码请进行一定修改后使用,本代码保证100%通过率.复盘思路在文章的最后 题目描述 给定两个字符串string1和string2 string1是一个被加扰的字符串. string1由小写英文字母 ( ...

  4. 软件测试的思路是什么意思,软件测试是什么 有哪些方法

    软件测试是指在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程. 软件测试是什么 软件测试(英语:Software Testing),描述一种用来促进鉴 ...

  5. 华为OD机试真题(Java),吃到最多的刚好合适的菜(100%通过+复盘思路)

    一.题目描述 入职后,导师会请你吃饭,你选择了火锅. 火锅里会在不同时间下很多菜. 不同食材要煮不同的时间,才能变得刚好合适.你希望吃到最多的刚好合适的菜,但你的手速不够快,用m代表手速,每次下手捞菜 ...

  6. 软件测试面试思路技巧和方法分享,学到就是赚到

    目录 1.面试前: 2.面试中: 3.面试后: 4.举例 面试技巧(不包含笔试部分): 1.面试前: 投递简历的第一建议是海投,经验不足的情况下切记,不要挑三拣四. 个人建议面试的安排周期,一天最多两 ...

  7. 华为OD机试真题(Java),根据员工出勤信息,判断本次是否能获得出勤奖(100%通过+复盘思路)

    一.题目描述 公司用一个字符串来标识员工的出勤信息 absent:缺勤 late:迟到 leaveearly:早退 present:正常上班 现需根据员工出勤信息,判断本次是否能获得出勤奖,能获得出勤 ...

  8. 如何做618数据复盘?你需要掌握这8大思路

    数据是运营的眼睛,不会使用数据的运营就是 "睁眼瞎".618复盘时该关注哪些数据?下面从8个维度帮你分析大促数据复盘思路,此数据复盘思路不仅可以用在618大促上,所有大型活动都可适 ...

  9. 半年从转行软件测试到产品经理

    背景介绍 本人一个普通二本,浪费了四年时间,毕业年龄就比同学大几岁,输在起跑线上,最可悲的是第一份工作也是随大流,完全放弃了自己的专业,什么东西也没学到,关键这一呆就是三年,浑浑噩噩过日子,根本不清楚 ...

  10. 先收藏!只需三步,教你做好 618 大促复盘!

    一场大型活动营销需要耗费大量的人力.物力,包括活动前期的活动玩法策划.推广渠道筛选.活动落地页设计.优惠券设计,活动中期的数据监测.异常 bug 修复,活动后期的奖品/优惠券核销等. 为了让每一场活动 ...

最新文章

  1. 孙正义真会玩,这个「人不是人,狗不是狗」的画面,价值上千万
  2. python计算均方根误差_如何在Python中创建线性回归机器学习模型?「入门篇」
  3. CentOS6.5菜鸟之旅:安装VirtualBox4.3
  4. Azure上基于HTTP trigger的Lambda Function
  5. SuperMap iDesktop 9D中实现地图配准
  6. Leetcode —— 面试题 04.02. 最小高度树(Python)
  7. ios 自定义圆环进度条
  8. 存储过程出错会回滚吗_一个人做梦过程中不小心挂了,梦境会继续吗?
  9. QT D:\Program Files (x86)\SogouInput\Components\
  10. 如何写好科研论文2021秋期末考答案|研究生网课期末考答案|学堂在线|清华大学高飞飞
  11. 第一章第一节第一课时智能训练(2012-01-18 18:42:23)
  12. 智芯传感压力传感器在咖啡机中的应用
  13. 芜湖计算机专业学校录取分数线,芜湖市各类高中2018年中考录取分数线是多少...
  14. GPU求解粘性不可压流体
  15. java根据物流单号查询物流详细
  16. 美国把互联网服务器都关了,到底对我们有什么影响?
  17. 05-现代威胁环境下的10个SIEM用例
  18. OpenCV每日函数 图像过滤模块 (6) erode腐蚀函数
  19. mysql存储过程之循环语句(五)
  20. #649 (Div. 2)D. Ehab‘s Last Corollary

热门文章

  1. 初始C语言——完数问题
  2. 计算机考试后勤保障管理制度,计算机在高校后勤管理的应用
  3. springboot中使用redis的案例
  4. python爬淘宝评论源代码_python3爬取淘宝信息代码分析
  5. Android 支付宝小程序跳转
  6. 华为交换机学习指南基于子网划分划分vlan
  7. 即时通讯视频聊天原理是什么
  8. 全球知名 CMS 提供商详细清单
  9. VWware15安装windows XP纯净版虚拟机
  10. 写给非网工的CCNA教程(6)VLAN和802.1q协议