测试人员如何做好工作量评估和风险把控?

今天想聊一聊关于测试工作量评估及需求进度把控的内容。

我个人觉得有时候评估测试工作量其实也挺难的,比如有的需求没有需求文档,只能靠自己对需求的理解去大概评估,有可能评估的工作量比实际需要的工作量会少点,对于每周进行迭代的项目来讲,差出来的这点时间可能就会导致项目不能如期上线的风险。

我最近就亲身经历了评估测试工作量不够合理导致差点出现上线风险的案例,好在是及时在早会的时候和整个团队包括产品、项目经理抛出了风险,然后和开发同学协同,通过连续加班的方式按照原计划完成了所有需求内容的测试,虽然最后没有真的引发上线的风险,但是不得不说,连续的加班去赶进度真的很头疼。

这让我意识到工作量评估和需求进度把控的重要性。经过这次案例,我们团队内部也进行复盘了,导致发布风险点的原因主要有以下两点:

  • 1.测试在评估工作量的时候没有按照每日正常的工作时长去评估的,而是把加班时间考虑进去了,本来按照正常来讲,测试完这个需求5人日,但是实际只评估了3人日(算上加班时间),而且没有预留一些时间去应对随时的变化,这导致测试在提测后就得加班加点的去执行测试,无疑是给自己增加了负荷。

  • 2. 开发同学在评估工作量的时候,没有对需求内容仔细研究,只是看了需求文档表面的描述去评估的开发所需的工时,结果开发过程中发现对本次需求内容不熟悉,导致不得不延期了提测时间,并且由于开发刚开始没有对需求内容深入的了解,导致提测后的质量不高,也直接影响到了测试正常的测试进度。

不过当时还好距离发布日期还有2天时间,经过项目内沟通后,希望还是尽量保证需求如期发布上线,最后开发和测试同学通过连续加班才把工作内容完成了。

当然,我们项目组内也不是说经常出现这种情况,这次之所以出现这个问题我觉得最大原因还是相关方在评估工作量的不够认真仔细,没有预留足够的缓冲时间。

我们这次的需求是提供了需求文档的,如果认真看一遍就会知道自己评估的工作量是有点太乐观了。但是有的时候,一些需求并不会提供详细的需求文档,甚至没有需求文档,这就增加了相关方评估工作量的一个难度。

比如我们还有一个正在开发中的需求,产品的诉求就是优化当前平台开发流程,提升产品交付速度,开发要做的就是重新开发一些组件用以替换当前项目中的一些老组件,以及通过一些界面可视化配置来代替之前的编码工作,这个没块是有需求文档的,完全依赖于开发的技术方案,我们测试也只能通过和开发了解具体的内容,最直观的可能就是开发同学完成需求所需要的人日,然后我们测试据此参照进行评估。

通过以上说的实际工作中遇到的情况,我总结了以下关于需求工作量评估的一些注意点:

  • 1、在评估工作量的时候,要按照正常每日工作时长去评估,除此之外,还得预留一点时间以应对可能出现的未预料的情况,比如开发延期、需求临时变更或者中途处理优先级更高的事情等。

  • 2、测试在评估完工作量后需要与开发同学对接一下,保证测试和开发的时间在整个迭代周期内是可以安全、充足衔接的,毕竟开发是在测试的上游,如果一旦出现开发延期提测的情况,势必会影响测试的进度。

  • 3、遇到没有需求文档或者需求文档不够详细的需求,评估工作量会比较难,因为没有具体的内容参照,这个时候测试可以花时间与开发同学仔细了解一下内容,比如如何实现的,有哪些特别需要注意的点,都可以增加我们对需求的了解,然后,测试可以把了解后的需求内容按照模块去编写测试策略,比如A模块涉及哪些功能,预估测试用例xx条,B模块涉及哪些功能,预估测试用例xx条等等,这样整体的需求内容就被我们拆解了,而且我们有了预估的用例条数,需求工作量就变得具体些了,这个时候我们再按照正常每日执行用例多少就可以评估出执行完所有用例所需要的人日,即使这不能很精确,但是相比光凭着自己脑子理解的需求去评估工作量还是更加有效的。

除了提升工作量评估的质量,其实还有一点很重要就是测试同学需要具备把握需求整体进度风险的能力。比如在测试在看需求的时候,如果觉得这个需求比较复杂或者会有些易踩的“坑”,可以提前和开发同学沟通,他们也许会重新评估自己的工作量。在实际工作中,像开发延期提测、需求变更或者其他因素导致影响测试进度的情况是不可能完全避免的,这要求测试同学在工作中要具备适应万变的能力,当真的出现这种情况的时候,我们可以这么做:

  • 1、重新及时评估工作量,确认对测试进度的影响范围,在项目组内及时抛出风险。

  • 2、适实调整计划,尽量争取他人的支持,合理协调资源。比如某些需求是可以拆解分步开发和提测的,那么我们可以和开发商量,看能否分步提测这个需求以便可以挽回一点测试时间;可以在项目内或者项目外争取到其他测试同学的支持;可以通过项目和产品沟通,看能否调整优先级,先去覆盖优先级高的需求等等。

项目能否如期保质保量的交付依赖于项目组内各个职能互相的支持与配合,测试作为项目推进的过程中的一份子,我觉得应有测试“左移”的思想,并在实际工作中去践行,把测试工作“走在前面”。测试同学需要具备整体把控需求进度风险的能力,在项目的开发与交付中发挥应有的作用。如果能够让大家形成一种共识:我们的测试是安全可靠的,是值得的信赖的,那我觉得这就是我们测试同学所存在的意义,也是对我们工作的褒奖。

祝愿大家都能不断进步,努力成为一名优秀的QA,与大家共勉!

行动吧,在路上总比一直观望的要好,未来的你肯定会感 谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入扣群: 320231853,里面有各种软件测试+开发资料和技术可以一起交流学习哦。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/823444.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Index to Lectures or Courses】

文章目录 1 Speech / Course2 Material3 Basic knowledge and tools4 职位缩写你知道几个? 1 Speech / Course 《中国文化文概论》(武汉大学)【Paper material】【阅读笔记】【Reading Notes】(1)【Reading Notes】(…

Mybatis-plus中的分页操作

Mybatis-plus中的分页操作 1.导入Mybatis-plus依赖2.创建mybatis配置类3.参数 1.导入Mybatis-plus依赖 因为是一个springboot项目&#xff0c;其中的pom.xml文件内容如下&#xff1a; <?xml version"1.0" encoding"UTF-8"?> <project xmlns&q…

用于时空交通数据插补的多注意张量完成网络

用于时空交通数据插补的多注意张量完成网络 摘要:道路传感器在物联网(IoT)中的广泛部署可以实现细粒度的数据集成,这是数据驱动应用程序的基本需求。 由于网络通信不稳定、传感器故障等,不可避免地丢失和实质性异常的传感数据是不可避免的。最近的张量补全研究通过精确捕获…

提高 RAG 应用准确度,时下流行的 Reranker 了解一下?

检索增强生成&#xff08;RAG&#xff09;是一种新兴的 AI 技术栈&#xff0c;通过为大型语言模型&#xff08;LLM&#xff09;提供额外的“最新知识”来增强其能力。 基本的 RAG 应用包括四个关键技术组成部分&#xff1a; Embedding 模型&#xff1a;用于将外部文档和用户查询…

DDoS攻击类型与应对措施详解

攻击与防御简介 SYN Flood攻击 原理&#xff1a; SYN Flood攻击利用的是TCP协议的三次握手机制。在正常的TCP连接建立过程中&#xff0c;客户端发送一个SYN&#xff08;同步序列编号&#xff09;报文给服务器&#xff0c;服务器回应一个SYN-ACK&#xff08;同步和确认&#xf…

【HormonyOS4+NEXT】TypeScript基础语法详解

&#x1f64b;‍ 一日之际在于晨 ⭐本期内容&#xff1a;TypeScript基础语法详解 &#x1f3c6;系列专栏&#xff1a;鸿蒙HarmonyOS4NEXT&#xff1a;探索未来智能生态新纪元 文章目录 前言变量与类型函数类与接口类&#xff08;Class&#xff09;接口&#xff08;Interface&am…

Nginx常用配置,开箱即用

经常遇到Nginx安装和配置的问题。这里笔者将常用配置统统写在下面&#xff0c;方便咱们日常使用。这里本着开箱即用的原则&#xff0c;所以大多数时候不会解释为什么要这样去配置&#xff0c;也不涉及Nginx的安装步骤。下面的所有配置&#xff0c;都可以直接复制后粘贴使用&…

PTA L2-045 堆宝塔 (25 分)

堆宝塔游戏是让小朋友根据抓到的彩虹圈的直径大小&#xff0c;按照从大到小的顺序堆起宝塔。但彩虹圈不一定是按照直径的大小顺序抓到的。聪明宝宝采取的策略如下&#xff1a; 首先准备两根柱子&#xff0c;一根 A 柱串宝塔&#xff0c;一根 B 柱用于临时叠放。把第 1 块彩虹圈…

2024第二十一届五一数学建模A题思路 五一杯建模思路

文章目录 1 赛题思路2 比赛日期和时间3 组织机构4 建模常见问题类型4.1 分类问题4.2 优化问题4.3 预测问题4.4 评价问题 5 建模资料 1 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 2 比赛日期和时间 报名截止时间&#xff1a;2024…

Linux系统的引导过程与服务控制

目录 一、Linux操作系统引导过程 二、Linux系统服务控制 系统初始化进程 三、运行级别切换 *运行级别及切换 Linux系统的运行级别 四、优化开机自动加载服务 五、修复MBR扇区故障 一、Linux操作系统引导过程 主要步骤 开机自检&#xff1a; 检测硬件设备&#…

winform入门篇 第13章 菜单栏

菜单栏 本章内容 菜单栏 工具栏 右键菜单 重点是右键菜单的实现。 菜单栏 MenuStrip&#xff0c;支持可视化编辑 添加 MenuStrip 添加菜单、菜单项、分隔线给菜单项设置属性 —Name 字段名&#xff0c;Text 文本显示,Image:图标 给菜单项添加事件处理(双击即可) 1.添加菜单…

OSPF的P2P和Broadcast

OSPF为什么会有P2P和BROADCAST两种类型 OSPF&#xff08;开放最短路径优先&#xff09;协议中存在P2P&#xff08;点对点&#xff09;和BROADCAST&#xff08;广播多路访问&#xff09;两种网络类型&#xff0c;主要是为了适应不同类型的网络环境和需求。具体分析如下&#xf…

Jmeter 压测-Jprofiler定位接口相应时间长

1、环境准备 执行压测脚本&#xff0c;分析该接口tps很低&#xff0c;响应时间很长 高频接口在100ms以内&#xff0c;普通接口在200ms以内 2、JProfiler分析响应时间长的方法 ①JProfiler录制数据 压测脚本&#xff0c;执行1-3分钟即可 ②分析接口相应时间长的方法 通过Me…

Louvain算法简介

1. 背景 Louvain算法是一种基于图数据的社区发现算法(community detection)&#xff0c;算法的优化目标为最大化整个数据的模块度&#xff0c;模块度的计算如下&#xff1a; 其中m为图中边的总数量&#xff0c; 表示所有指向节点 i 的连边权重之和。 表示节点 i&#xff0c;j 之…

14_SpringMVC

文章目录 MVCSpringMVC与JavaEE对比SpringMVCSpringMVC的核心流程SpringMVC入门案例RequestMapping注解的使用Handler方法的返回值Handler方法的形参keyvalue形式的请求参数Json请求参数 RESTful风格接口静态资源处理FilterHandlerInterceptor异常处理SpringMVC核心流程流程图 …

sudo apt install ros-humble-gazebo-*显示网络不可达 Ubuntu20.04使用清华镜像本地安装/更新ros2

问题 sudo apt install ros-humble-gazebo-*显示网络不可达&#xff0c;这是因为sources.list中的镜像源有问题&#xff0c;换成清华源可以解决问题 解决 1 设置Ubuntu镜像源为清华镜像源 1.1 备份source.list文件 sudo cp /etc/apt/sources.list /etc/apt/sources.list.ba…

线圈、寄存器、存储区代号、功能码 案例说明

线圈和寄存器 表示数据类型 线圈&#xff1a;表示Boolean数据类型 寄存器&#xff1a;表示非Boolean数据类型&#xff0c;用来暂时存放参与运算的数据和运算结果&#xff0c;具有接收数据、存放数据和输出数据的功能。 ModbusRTU 读输出线圈 存储区代号 0区 功能码 0x01 读输入…

金牌客服的宝藏App——客服宝快捷回复软件

在客户服务领域&#xff0c;时间就是金钱&#xff0c;效率就是生命。作为一名荣获“金牌客服”称号的小编&#xff0c;我深知快捷回复工具对于提升工作效率和客户满意度的重要性。今天&#xff0c;我要向大家推荐一款在客服界小有名气的神器——客服宝聊天助手。这款快捷回复软…

2024.4.17

poll客户端 #include <myhead.h> #define IP "192.168.38.128" #define PORT 8889 int main(int argc, const char *argv[]) {//创建套接字int cfd socket(AF_INET,SOCK_STREAM,0);if(cfd -1){perror("cfd");return -1;}//绑定//......//连接服务…

C++动态内存管理 解剖new/delete详细讲解(operator new,operator delete)

讨厌抄我作业和不让我抄作业的人 讨厌插队和不让我插队的人 讨厌用我东西和不让我用东西的人 讨厌借我钱和不借给我钱的人 讨厌开车加塞和不让我加塞的人 讨厌内卷和打扰我内卷的人 一、C中动态内存管理 1.new和delete操作内置类型 2.new和delete操作自定义类型 二、operat…