测试八年|对业务测试人员的一些思考

news2024/11/15 17:15:57

自从事测试工作八年多以来,经历过三个部门多条业务线,也经历过测试转型再回到测试,在此过程中对测试工作和角色的认知也逐步有些思考,想把这些思考分享给大家,希望为业务测试同学提供一些有价值的思路。

一、质量保障的本质是什么
质量保障有很多工作,如发布前对业务需求的功能测试、性能测试、a/b test等,如发布后对线上的功能回归、冒烟巡检、异常监控等,我们做这些工作都围绕着“缺陷发现”,尽可能去发现系统潜在的bug,这似乎就是质量保障的所有内容和目的,但是可以跳出这些具体的工作内容,质量保障的本质到底是什么?

我认为质量保障的本质:

是一个尽力穷尽各种手段,不断去“证伪”的过程;

是一个在有限条件和时间内,尽力将线上发生问题/故障的概率降低到最小的过程;

是一个站在风险控制的角色上,尽力提前发现/披露所有质量隐患的过程,并将出现质量问题的损失降低到最小的过程;

总结:质量保障的追求不是发现所有的bug、解决所有的风险,而是确保即使触发了bug也不会带来恶劣的影响,在此基础上力求去发现尽可能多的bug -> bug 触发概率降到尽可能低 -> 触发bug后带来的损失降到尽可能小

二、测试过程的本质是什么
一线业务测试人员的大部分工作都在支撑业务的交付,从理解prd和技术方案,到给出测试方案,执行测试方案、发现bug、验证bug再到发布后的回归验证,这是一个业务测试人员的大部分工作模式和流程,那么这个过程的本质是什么?我的理解是这一个词“ROI”。

测试过程的本质是努力寻找质量缺陷发现与资源投入的平衡点,这里的资源投入不单指测试的资源投入,而是指业务交付上所有参与者的资源投入,所以在一定程度上是可以或者说是需要牺牲长尾缺陷的,我们的追求也应该是不断去提高这个ROI,同时做好线上风险防控。

三、测试角色的价值
回答这个问题之前,我们需要先理清以下几个问题:

1)测试角色的价值由什么决定?受什么影响?
取决于业务特性对质量的需求:不同的业务特性对质量的诉求不同,这取决于业务的用户群体和规模、业务的金融风险、业务迭代导致出问题的概率和影响面等因素。

取决于业务发展状态、技术架构成熟度:一般来说,当一个业务处于刚起步、高速发展时,技术由于需要快速满足业务的需求,架构设计乱、基础建设差,此时质量问题较多,也就强依赖测试角色来做强力保障,而后随着业务稳定、技术基建完善、线上保障手段丰富,会在一定程度上减少对测试角色的依赖。

2)测试这一工作是否可以转移/测试角色是否可以省略?可/需转移的决定因素是什么?
首先答案是肯定的,可以转移或者省略,虽然不一定是好的选择~

业务对质量的诉求:业务的特性或者发展到一定程度,减弱对质量保障活动的需求。

线上风险的可控性:业务和技术成熟稳定,有比较可靠的线上风险控制能力。

质量活动的成本:在业务能够承受一定质量风险的前提下,质量保障活动的成本需要降低,并且转移的成本比维持现状要低。

3)如何体现测试角色的价值?
反向思考:今天这个业务如果没有测试角色,会怎么样?业务会跑得更快更好吗?

我们站在测试角色上,可以反思:

测试能力:

对所负责业务是否足够熟悉,是否能站在独特视角【区别于产研】来提出质量风险?

是否拥有一定的技术壁垒和门槛,是否可以被高级外包/研发替代?

测试应尽之责是否做到位并且获得良好反馈,测试的职责范围是否有扩展到“测试过程”之外的领域?

交付效率:

在业务需求繁重且紧迫情况下,测试是在起正向作用还是负向作用?

交付遇到阻塞问题或者困难时,测试起到什么作用?
综上所述,测试角色的价值:

a.业务发展需要测试角色,进行质量保障活动来降低质量风险 【客观】

b.组织在成本范围内,可以组建并维持测试角色 【客观】

c.测试角色可以用高ROI完成质量保障活动,并具备较高成本的不可替代性

【主观】

因此我们只能通过以下两个方向来提升测试价值的传输与外化:

提升ROI:以极致高的效率来发现缺陷,用高效的手段来证伪

在成本控制前提下,对质量贡献是正向的;

在交付周期内,对效率提升是正向的;

提升可替代的成本:不断变革先进生产力,努力转化生产关系

努力将测试的职责扩大;

不断研发新技术、新手段,提高技术壁垒;

与业务发展强绑定,力争成为业务不可或缺的生产力;

以上三个问题是对测试工作的一些思考,那么对于我们一线业务测试人员应该具备哪些能力,才能够去提升我们角色的价值?以下是我对三个层次测试人员的理解,可以分别从业务熟练度、测试方案与风险控制能力、合作协调能力、技术能力这四个维度去对照:

一个合格的业务测试人员应该具备哪些能力 【熟练度 完成度】

a.对所负责的业务线,产品业务逻辑和技术实现细节非常熟悉;

b.对日常测试流程及方案,熟悉并能顺利完成,能够主动解决卡点问题;

c.有一定的风险把控意识;

d.能与各方合作协调,顺利推动需求交付;

一个优秀的业务测试人员应该具备哪些能力 【owner意识 合作共赢】

a.具备业务owner视角和意识,能提出质量风险并给出建议;

b.能承担较复杂项目的测试一号位角色,能制定合理的质量保障方案;

c.能从全链路视野去提前预警风险;

d.能与各方协调合作良好,通过技术手段有效解决和减少交付过程中的卡点问题;

一个卓越的业务测试人员应该具备哪些能力【把控力 创新力 影响力】

a.打破思维局限和业务壁垒,能对业务所涉及的全链路通盘熟悉、风险把控;

b.能根据业务特性和质量风险短板,制定并落地合理化的质量保障体系化方案;

c.能更多承担除“测试过程”以外的质量保障工作,如大促稳定性保障、线上问题发现与处理等;

d.能跨团队、跨部门高效协作,有更多的“利他”思维,能通过创新型手段解决全链路题,并建立技术影响力;

以上是我对测试工作和角色的一些思考沉淀,希望对大家有所帮助,并能够驱动大家在工作中不断思考:

1.我当前负责的业务,对我的依赖程度有多大?具体是在哪些方面依赖我?

2.我测了10个、100个、1000个业务需求的差异是什么,对业务及对我自身的提升是什么?

3.我作为业务测试角色的核心竞争力是什么、有多大?

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

文档获取方式:
 
加入我的软件测试交流群:1007119548免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

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

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

相关文章

【Leetcode】2085. 统计出现过一次的公共字符串

文章目录 题目思路代码 题目 2085. 统计出现过一次的公共字符串 思路 使用两个哈希表 words1Count 和 words2Count 分别统计两个数组中每个单词的出现次数。然后遍历 words1Count 中的每个单词,如果该单词在 words1 中出现了一次,且在 words2 中也出…

如何运用自养号测评策略在Lazada、Shopee上轻松提升销售和排名

卖家们常常会为Lazada、Shopee店铺销量不佳而感到困惑。然而,仅仅感叹并不能解决问题。作为卖家,我们需要深入分析问题,并采取有效的措施来解决它们。基本功是提升销量的基石,但仅仅依靠基本功是不够的。我们需要将运营和测评结合…

Java面试题(java高级面试题)

线程池的核心线程数设置为多大比较合理? Worker线程在执行的过程中,有一部计算时间需要占用CPU,另一部分等待时间不需要占用CPU,通过量化分析,例如打日志进行统计,可以统计出整个Worker线程执行过程中这两…

【排序算法】插入排序与希尔排序,你不想知道为什么希尔比插入更快吗?

文章目录 🚀前言🚀插入排序(insertsort)✈️原理✈️代码实现(coding) 🚀总结🚀希尔排序(shellsort)✈️代码实现(coding)✈️为啥希尔…

Android基于Matrix绘制PaintDrawable设置BitmapShader,以手指触点为中心显示原图像圆图,Kotlin(2)

Android基于Matrix绘制PaintDrawable设置BitmapShader,以手指触点为中心显示原图像圆图,Kotlin(2) 在 https://zhangphil.blog.csdn.net/article/details/135374279 基础上,增加一个功能,当手指在上面的图片…

以报时机器人为例详细介绍tracker_store和event_broker

报时机器人源码参考[1][2],本文重点介绍当 tracker_store 类型为 SQL 时,events 表的表结构以及数据是如何生成的。以及当 event_broker 类型为 SQL 时,events 表的表结构以及数据是如何生成的。 一.报时机器人启动 [3] Rasa 对话系统启动方…

基于springboot+vue心理测试管理系统

摘要 基于Spring Boot 和 Vue 的心理测试管理系统是一个综合利用现代Web开发技术的应用程序。系统采用了Spring Boot作为后端框架,通过其简化的配置和强大的功能提供了稳健的服务器端支持。前端则使用Vue.js,一个灵活、高效的JavaScript框架,…

通义千问AI挑战赛赛后反思

个人理解: 初赛阶段主要聚焦在如何通过 SFT 提升基础模型的代码能力,需要选手基于最新开源的 Qwen 1.8 模型作为基础模型,上分的关键主要通过收集高质量的代码数据提升模型的在Python, JavaScript, Java, Go, C, Rust六种编程语言的代码生成…

档案数字化怎样快速整理资料

对于机构和组织来说,档案数字化是一个重要的信息管理和保护措施。要快速整理资料进行档案数字化,可以遵循以下步骤: 1. 准备工具和设备:确保有一台计算机、扫描仪和相关软件。 2. 分类和组织资料:先将资料分类&#xf…

c++最值查找

目录 min和max函数 min_element和max_element 例 nth_element函数 例 例题 题目描述 输入描述 输出描述 解 min和max函数 只能传入两个值或一个列表 时间复杂度为O(1),数组O(n),n为元素个数 min_element和max_element min_element(st,ed)返回地址[st,…

数据结构学习之顺序栈应用的案例(有效的括号)

实例要求: 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有效; 有效字符串需满足的条件: 1、左括号必须用相同类型的右括号闭合; 2、左括号必须…

服务端性能测试——性能测试工具JMeter-L1

第一遍没学懂,后续文章会更新~ 目录: 1.JMeter介绍与安装Meter简介JMeter安装2.JMeter的运行JMeter运行、界面功能简介3.使用代理服务器录制请求录制压测脚本(一)Web端脚本录制方法4.测试计划5.线程组6.控制器7.JMeter采样器/取…

Postman接口测试工具最全实用教程

一、postman简介 1、postman的特点 postman只做http协议的接口的测试,是一种最广泛REST接口测试客户端软件。postman支持http协议的所有请求方式,包括get、post、head、put、delete等。postman支持各种额外的头部字段的添加。postman除了可以模拟普通表…

chat-plus部署指南

目录 1.下载代码 2.启动 3.测试 1.下载代码 cd /optwget https://github.com/yangjian102621/chatgpt-plus/archive/refs/tags/v3.2.4.1.tar.gz 2.启动 cd /opt/chatgpt-plus-3.2.4.1/deploydocker-compose up -d 3.测试 管理员地址xxx:8080/admin 账号密码admin/admin1…

java流程控制-给个一件三连呗!✨✨✨✨✨

接下来我们来看流程控制方面的知识 文章目录 1.Scanner类的使用1.1 使用next()进行接收1.2 nextLine()1.3 hasNext()1.4 scanner.nextInt() 2.选择结构2.1 if...else....语句2.2 if....else if....else...语句2.3 switch() case...语句 3.循环结构3.1for 循环:3.2w…

ES索引原理

ES在检索时底层使用的就是倒排索引,正向索引是通过key找value,反向索引则是通过value找key。 索引会分为两个区域:索引区和元数据区。数据是这样存储在里面的: 简单理解就是:当要录入一条数据时,首先会将完…

Linux之Iptables简易应用

文档形成时期:2009-2024年 和iptables打交道有15年了,经过无数实践后,形成一个简易应用文档。 文档主题是简易应用,所以其原理不详述了。 因软件世界之复杂和个人能力之限,难免疏漏和错误,欢迎指正。 文章目…

伴随矩阵定义和计算

一、伴随矩阵定义 1)代数余子式 代数余子式也很好理解,在余子式的基础上多了一个-1的次方而已。 2)余子式 余子式很好理解,就是除了这个元素,出去该行该列剩下的行列式的值。 求每个元素的代数余子式,按行求&#xf…

关于白盒测试,这些技巧你得游刃有余~

对于很多刚开始学习软件测试的小伙伴来说,如果能尽早将黑盒、白盒测试弄明白,掌握两种测试的结论和基本原理,将对自己后期的学习有较好的帮助。今天,我们就来聊聊黑盒、白盒测试的相关话题。 1、黑盒测试的方法和小结 最常见黑盒…