从事软件测试8年,对业务测试人员的一些思考

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

同时,在这我准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺这份测试文档资料也打包在里面啦,免费领取!

软件测试视频教程观看处:

软件测试工程师大忌!盲目自学软件测试真的会毁终生,能救一个是一个......

一、质量保障的本质是什么

质量保障有很多工作,如发布前对业务需求的功能测试、性能测试、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.我作为业务测试角色的核心竞争力是什么、有多大?

四、写在最后

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Mysql查看Binlog文件

前期准备 检查是否开启binlog mysql> SHOW VARIABLES LIKE log_bin; // 或者 mysql> SHOW VARIABLES LIKE log%;ON代表开启,OFF代表关闭。如为OFF需 开启 后才能查看,但只能查看开启之后时间点的。 查看binlog文件有哪些 一般yum安装的mysql…

玩具礼品经营配送小程序商城作用是什么

玩具礼品所覆盖的需求人群年龄阶层非常广,尤其是孩子们乃至年轻人比较喜欢的,也因此无论线下还是线上都不缺各种店铺,传统商家主要以自然流量和线上开广告、一堆图文等方式分享获得生意。 然而如今随着互联网电商冲击,线下店铺流…

Python + Docker 还是 Rust + WebAssembly?

在不断发展的技术世界中,由大语言模型驱动的应用程序,通常被称为“LLM 应用”,已成为各种行业技术创新背后的驱动力。随着这些应用程序的普及,用户需求的大量涌入对底层基础设施的性能、安全性和可靠性提出了新的挑战。 Python 和…

AI助力钢铁产业数字化,python基于YOLOv5开发构建钢铁产业产品智能自动化检测识别系统

AI为工业产业智能化数字化赋能早已不是什么新鲜事,越来越多的行业和领域开始更大范围去拥抱AI,享受科技带来的变革力量,在我们之前的文章中也有很多相关领域项目的实践经历,本文的核心目标就是想要基于钢铁领域产品数据来开发构建…

【Unity细节】Default clip could not be found in attached animations list.(动画机报错)

👨‍💻个人主页:元宇宙-秩沅 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 秩沅 原创 😶‍🌫️收录于专栏:unity细节和bug 😶‍🌫️优质专栏 ⭐【…

LeeCode前端算法基础100题(3)- N皇后

一、问题详情: 按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后…

大宗商品贸易集团数据治理实践,夯实数字基座 | 数字化标杆

某大型央企是首批全国供应链创新与应用示范企业,在“十四五”规划期内以聚焦供应链管理核心主业作为主要战略发展方向。供应链运营管理以大宗商品贸易为主,其交易往往具有交易量巨大、交易环节复杂、风险交易难识别、风险客商难管控等痛点。 随着集团数…

数字乡村:科技赋能农村产业升级

数字乡村:科技赋能农村产业升级 数字乡村是指通过信息技术和数字化手段,推动农业现代化、农村经济发展和农民增收的一种新模式。近年来,随着互联网技术的飞速发展,数字乡村开始在全国范围内迅速兴起,为乡村经济注入了新…

超详细的pytest玩转HTML报告:修改、汉化和优化

前言 Pytest框架可以使用两种测试报告,其中一种就是使用pytest-html插件生成的测试报告,但是报告中有一些信息没有什么用途或者显示的不太好看,还有一些我们想要在报告中展示的信息却没有,最近又有人问我pytest-html生成的报告&a…

银河麒麟V10-ARM架构-postgresql安装与部署指南

提示:本人长期接收外包任务。 前言 本文详细介绍应用源码进行pgsql的安装步骤,本文以postgresql-12.0为例。 一、下载并解压安装包 ☆下载地址:https://ftp.postgresql.org/pub/source/ 解压安装包,创建安装路径: …

【C++】特殊类设计 {不能被拷贝的类;只能在堆上创建的类;只能在栈上创建的类;不能被继承的类;单例模式:懒汉模式,饿汉模式}

一、不能被拷贝的类 设计思路: 拷贝只会发生在两个场景中:拷贝构造和赋值重载,因此想要让一个类禁止拷贝,只需让该类不能调用拷贝构造以及赋值重载即可。 C98方案: 将拷贝构造与赋值重载只声明不定义,并…

虚拟机VMware客户机隔离灰色如何解决||实现本机复制粘贴到虚拟机

前言:本次镜像为win10,其他操作系统也欢迎尝试 现象:虚拟机设置选项不可编辑,且是否勾选都无法实现复制粘贴 可能存在的问题解决方案 Q1:未安装虚拟机工具:VMware Tools A1:安装工具&#xff…

解决“使用 CNKI 保存时发生错误。改为尝试用 DOI 保存。”【Bug Killed】

文章目录 简介解决办法跟新本地Zotero中茉莉花插件的非官方维护中文翻译器更新网页插件Zetero Connector中的Transtors 结语参考资料 简介 使用Chrome ➕ Zotero Connector保存中国知网(CNKI)的参考文献到本地的Zotero时无法正常保存,出现使…

ubuntu22.04在线安装redis,可选择版本

安装脚本7.0.5版本 在线安装脚本,默认版本号是7.0.5,可以根据需要选择需要的版本进行下载编译安装 sudo apt-get install gcc -y sudo apt-get install pkg-config -y sudo apt-get install build-essential -y#安装redis rm -rf ./tmp.log systemctl …

电脑键盘推荐

一、键盘分类 (1)键位个数 目前有75,84,87,98,104,108的。 (2)薄膜键盘和机械键盘 薄膜键盘就是大多数办公室常见的键盘,主要打一个便宜,耐造…

《人月神话》读书笔记

文章目录 一、书名和作者二、书籍概览2.1 主要论点和结构2.2 目标读者和应用场景 三、核心观点与主题3.1 人员组织管理主题3.2 项目时间进度管理主题3.3 项目成本风险管理主题3.4 软件工程内在本质 四、亮点与启发4.1 最有影响的观点4.2 对个人专业发展的启示 五、批评与局限性…

SQLite3 数据库学习(五):Qt 数据库高级操作

参考引用 SQLite 权威指南&#xff08;第二版&#xff09;SQLite3 入门 1. Qt 数据库密码加密 MD5 加密在线工具 1.1 加密流程 加密后的密码都是不可逆的 1.2 代码实现 loginsqlite.h #ifndef LOGINSQLITE_H #define LOGINSQLITE_H#include <QWidget> #include <Q…

博士研究生不会编程,也没有使用过Python,是否很失败

首先&#xff0c;对于博士研究生来说&#xff0c;虽然在学习和科研的过程中会涉猎到大量的专业知识&#xff0c;但是同样也会错过很多知识&#xff0c;对于非计算机相关专业的博士研究生来说&#xff0c;没有使用过Python&#xff0c;或者说编程能力比较弱也是比较正常的情况&a…

使用whisper实现语音转文本

项目地址&#xff1a;GitHub - openai/whisper: Robust Speech Recognition via Large-Scale Weak Supervision 1、需要py3.8环境 conda activate p38 2、安装 pip install -U openai-whisper 3、下载项目 pip install githttps://github.com/openai/whisper.git 4、安装…

Class文件转Java文件

目录 1、下载一个反编译工具2、在文件夹下打开命令窗口3、在此目录下随意建一个文件夹4、在打开的命令窗口输入命令5、返回解压目录下 1、下载一个反编译工具 下载链接&#xff1a;https://varaneckas.com/jad/ 下载的是第一个 下载后放至任意目录下解压即可 2、在文件夹下打…