测试“背锅侠”?软件测试人究竟背了多少锅?我不再背锅...

news2024/11/20 19:24:31

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

实际上,测试人员一直处于“背锅侠”的处境,测试人员究竟背了哪些锅?

第一层锅:产品不能如期交付的锅

我们知道,产品交付排期一般是固定的,很多时候,我们在这个基础上,进行开发测试排期的倒排,而测试作为产品交付的最后一个环节,经常被严重压缩排期,场景比如:

研发未能按时提交测试版本;

研发如期交付,但功能并未开发完,或者交付质量很差。

上述两种场景非常常见,尤其是第二种场景,这时候测试人员几乎是有口难言,人家按时提交了,交付质量差也怨不得人家,但因此带来很多测试成本,原来评估的排期根本不够用。

更有甚者,虽然交付测试,但部分功能未开发完,然美其名曰“敏捷测试”,这里不是说敏捷测试不好,只不过实际过程中,敏捷测试被滥用了,因此带来很多测试人力的浪费和排期挤压。

这两种场景,带来的直接后果,就是测试排期被严重压缩,如果产品未能如期交付,第一个被拿出来的理由一定是:未完成测试。

而为了不背这个锅,测试人员只能压榨自己,逼自己如期完成。这是测试背的第一层锅:产品不能如期交付的锅,而为了如期交付,测试人员只能压榨自己,加班加点。

第二层锅:质量不符合预期的锅

在产品使用过程中,如果出现问题,第一个被问责的对象就是测试:测试人员为什么没有发现该问题?

而因为几乎大部分问题都能定性为测试案例未覆盖,所以测试经常需要背“质量不符合预期的锅”。

之所以背这顶锅,根本原因是业内人员对测试人员的职责定位有误。

大部分人认为测试的职责就是为质量负责,且是负全部责任,只要是质量问题,测试就需要承担起来。

但,请问质量是测试出来的吗?显然不是,质量是设计出来的。

一个坏透了的架构设计,注定产品质量会漏洞百出,测试无法穷尽所有场景发现所有问题。一个好的架构设计,在设计层面就规避掉了几乎所有潜在风险。

当一个产品漏洞百出时,一定是架构设计的不够合理,这时候无论怎么测试,质量都不会太好,因此,当问题出现时,不应该去问责测试为什么没有发现,而是去反思架构设计。

总结来说,很多时候,测试成了架构设计不合理的背锅侠。

当然,这个结论的前提是,这个问题的确是架构的问题。如果出问题的是核心流程,测试的确需要承担一定责任,毕竟基本功能需要确保无问题。

测试的职责是验收产品主要功能满足要求。

第三层锅:紧急出版本的锅

很多时候需要紧急出版本修复问题,这时候,测试排期几乎被严重压缩。然后,测试还要担着交付后质量无问题的责任,这两者其实是互相矛盾的存在:为了保障质量,需要充分的时间去测试,而排期被严重压缩,几乎没时间充分测试,测试人员深陷其中,苦苦挣扎。

总体来看:

一方面产品交付前,测试排期被严重挤压,测试需要加班加点去完成测试,而由于排期被压缩,测试可能无法充分展开,存在质量隐患。

另一方面,产品交付后,如果真的出现质量问题,测试又会成为第一个被问责的对象,而为了紧急修复问题,测试又需要加班加点去完成测试,而这时候测试周期往往被严重压缩,无法充分测试,进而又埋下了质量隐患。

这不是“背锅侠”是什么?

如果团队研发能力很弱,且对交付质量要求很高或者事故容忍能力很低的时候,测试面对的压力会被急速扩大,成为“超级背锅侠”。

为什么呢?
因为研发能力弱,代表潜在质量问题会很多,测试复测成本非常大,且交付的产品从根上就注定了功能不稳定,导致事故频发。
如果这时候产品对事故的容忍能力很低,那么后果就是测试需要频繁的被问责,以及被要求完成紧急版本的测试。这种情况下,压力被严重放大。

如果产品对质量问题的容忍度较高,那么测试人员暂且还可以承受住这个“冤屈”,而如果团队研发能力很弱,且对交付质量要求很高或者事故容忍能力很低的时候,就需要考虑“伸冤”了。

测试人如何伸冤?

列举几条:
摆正测试人员的职责范围,质量是设计出来的,不好的设计一定会存在很多质量隐患,不要上来就问责测试。

基于当前的研发能力,对未来事故的发生频率给予合理的预期,尤其在上面描述的场景下,这时候,如果还要做大型架构设计改造,那么未来一定会出现各种质量问题,需要对质量问题有足够的容忍度,提供宽松的空间让大家去踩坑,只有这样才是最为人性的处理。

放缓产品交付节奏,缩小产品影响范围,逐步交付,降低事故发生频率。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

生活不是一场竞赛,而是一段旅程。不要去比较你和别人的成就,而是专注于自己的成长。困难和挫折只是暂时的,坚持和努力才是通往成功的关键。无论你的目标是什么,只要热爱它并付出努力,你一定会实现它。

只有不断地向前奔跑,才能到达成功的彼岸;只有不断地攀登,才能登上巅峰的高峰;只有不断地坚持,才能够实现自己的梦想。让我们一起努力,为了更好的明天!

无论你现在的起点在哪里,只要你肯努力奋斗,成功终将属于你;别害怕失败,失败是成功的一部分;每一次挑战都让你更加强大,相信自己,不断追求进步,你一定会实现自己的梦想!

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

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

相关文章

多线程并发的一些常见的使用规范

目录 1. 多线程并发使用规范 1.1 指定线程名称 2. 尽量使用线程池 3.不允许使用Executors 4. 正确停止线程 5. 编写可停止的Runnable 6 . Runnable中必须捕获一切异常 7. 可考虑使用ThreadLocal 8. 缩短锁 9. 选择分离锁,分散锁甚至无锁的数据结构 10. 推…

【C/C++】标准库相关题型(一)

文章目录 1. vector底层实现原理1.1 类构成1.2 构造函数1.3 插入元素1.4 删除元素1.5 读取元素1.6 修改元素1.7 释放空间 2. vector内存增长机制2.1 特点2.2 内存增长特性2.3 内存增长过程2.4 内存清理2.5 注意事项 3. vector中reserve和resize的区别3.1 共同点3.2 区别3.3 应用…

在 ZBrush 和 Maya 中创建 Chris Hemsworth 的 3D 肖像

今天瑞云渲染小编给大家带来一篇Marius Prsel分享了 Chris Hemsworth 项目背后的工作过程,详细介绍了角色的头部、面部和头发是如何制作的,并解释了如何在 Arnold 中完成渲染,一起来看看吧! 简介 我的名字是Marius Prsel&#xf…

7个理由:从Java8升级到Java17【翻译】

原文地址: 7 Reasons to Migrate from Java 8 to Java 17 释放吧,Java的全部力量。[手动狗头] 简介 从Java8到Java18,Java已经经历了漫长的发展历程(Java20非长期维护版本)。同时也是从Java 8开始,Java生态系统发生…

【LeetCode热题100】打卡第23天:最小覆盖子集

文章目录 【LeetCode热题100】打卡第23天:最小覆盖&子集⛅前言 最小覆盖🔒题目🔑题解 子集🔒题目🔑题解 【LeetCode热题100】打卡第23天:最小覆盖&子集 ⛅前言 大家好,我是知识汲取者&…

三种方法将Word文档转换为PDF文件格式

如何将Word文档转换为PDF文件格式呢?大家在传输文件时,很多人喜欢使用PDF文件格式,因为它非常稳定,不会出现格式混乱的问题。但有些人可能不知道如何进行转换,今天我将介绍三种转换方法,让我们一起来学习一…

从0开始,精通Go语言Rest微服务架构和开发

说在前面 现在拿到offer超级难,甚至连面试电话,一个都搞不到。 尼恩的技术社区中(50),很多小伙伴凭借 “左手云原生右手大数据”的绝活,拿到了offer,并且是非常优质的offer,据说年…

Pytest教程__Hook钩子函数总结(14)

前言 pytest 的钩子函数有很多,通过钩子函数的学习可以了解到pytest在执行用例的每个阶段做什么事情,也方便后续对pytest二次开发学习。 详细文档可以查看pytest官方文档API Reference — pytest documentation 钩子函数总结 第一部分:set…

5、DuiLib组件结构的初探

文章目录 1、DuiLib组件结构的初探 1、DuiLib组件结构的初探 DuiLib 整体的实现不仅仅有控件,还有窗口消息、XML处理等模块,官方曾经过出的一个结构图如下: 图中还是比较详细的描述了 DuiLib 的整体设计,值得注意的部分是 “窗口…

每日一练 | 华为认证真题练习Day61

1、DHCPv6服务器发送的DHCPv6 ADVERTISE报文目的端口号为? A. 548 B. 547 C. 549 D. 546 2、当DHCPv6客户端收到DHCPv6服务器发送的RA报文中的和O标记位取值为下列哪个数值时,DHCPv6客户端采用DHCPv6有状态自动配置获取IPv6地址和其它配置信息&#…

Android libusb库的使用

Download Data Center Software from Total Phase. 1 Aptiv DABR Aptiv acquired Indian Unwired,Delphi Automotive USB Bridge / Hub,Hub中集成了UDC,upstream UDC连接的主机称为A-Host,downstream UDC被B-Host枚举成Relay devi…

一个床垫的故事

这是学习笔记的第 2460篇文章 这是一个床垫的真实故事,想起来还是蛮感慨的,真是太魔幻了。 起因是我哥搬家,有一个很新的品牌床垫,因为新房子那边买家具已经送了一个床垫了,所以就多出来一个床垫,他打算把…

autogpt的使用,还有出现的问题

AutoGPT简介 AutoGPT是一个实验性开源应用程序,展示了GPT-4语言模型的功能。该程序由GPT-4驱动,将LLM“思想”链接在一起,以自主实现您设定的任何目标。作为GPT-4完全自主运行的首批例子之一,AutoGPT突破了人工智能的极限。 注&a…

Opencv-C++笔记 (6) : opencv-图片和视频操作

文章目录 一、读取函数imread二、图片窗口函数namedWindow三、 图片保存Imwrite和显示函数Imshow四、视频数据的读取五、摄像头直接调用 一、读取函数imread cv::Mat cv::imread(const String & filename,int flagsIMREAD_COLOR)filename:需要读取图像的文件名…

Linux运维监控学习笔记4

Zabbix相关的一些概念: Zabbix用户和用户群组: 用户:Zabbix提供多用户管理,不同的用户可以设置不同的权限,不同的语言和不同的报警方式。 1)创建用户:点击“创建用户”按钮: 2&…

NOTA PEG7 Azide,NOTA-七聚乙二醇叠氮,新型双功能整合剂

NOTA PEG7 Azide中NOTA及其衍生物是新型双功能整合剂之一。NOTA及其衍生物具有良好的配位和鳌合能力,可作为过渡金属离子的配体。叠氮化物基团可以参与铜催化的与炔部分的点击化学反应。 聚乙二醇在科研领域运用广泛,聚乙二醇具有良好的水溶性&#xff0…

【FPGA入门】第一篇、Verilog基本语法常识

目录 第一部分、不同的变量类型 1、wire和reg的区别 2、如何对变量进行赋值呢? 3、什么是阻塞?什么是非阻塞? 第二部分、变量位宽的定义 1、各种系统默认情况 2、变量位宽声明方式 3、表明位宽的情况下,赋值方式 4、两个模…

来自一个敲了5年代码的网络安全工程师的自述(目前薪资30K)

本人是一名敲了5年半代码的网络安全工程师,目前在杭州工作,月薪目前是在30.6K左右,经历过两次跳槽,第一次跳槽拿到了12K的offer,第二次跳槽拿到18K的offer。一直到目前为止的30K左右。 说到这里再给大家提个醒&#x…

SpringBoot整合定时任务技术Quartz

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ RequestMapping注解 🚀Quartz应用场…

好消息!PMP证书还没过期的宝子,可以增持免考CSPM-2证书

2021年10月,中共中央、国务院发布的《国家标准化发展纲要》明确提出构建多层次从业人员培养培训体系,开展专业人才培养培训和国家质量基础设施综合教育。建立健全人才的职业能力评价和激励机制。由中国标准化协会(CAS)组织开展的项…