如何用精准测试来搞垮团队?
测试行业每年会冒出来一些新鲜词:混沌工程、精准测试、AI测试…… 这些新概念、新技术让我们感到很焦虑,逼着自己去学习和了解这些新玩意,担心哪一天被淘汰掉。
以至于给我这样的错觉,当「回归测试」、「精准测试」这两个词摆在一起,「回归测试」立刻就显得有些低级。我们愿意花时间去学习更新鲜的东西,也不愿意花费更多时间去研究如何做好「回归测试」这类老生常谈的工作。
所以,每隔一段时间我都会试着问问自己:「这项新技术的本质是什么?」、「和传统测试技术的关系是什么?」、「我为什么要学习它?」、「只是一个空洞的概念?还是有落地的实际方案?」、「公司内有适合推广的土壤吗?」……

弄清楚了这些问题后,我发现自己甄别出了:哪些技术我要学习,哪些技术我完全不需要学习。
最后,我也就不焦虑了。
精准测试是什么?
精准测试 是一套计算机测试辅助分析系统。精准测试所涉及的核心范围包含:软件测试用例和代码的双向追溯、智能回归测试用例选取、覆盖率分析、缺陷定位、测试用例聚类分析,这些功能完整的构成了精准测试技术体系。
用大家能听懂的话来说,我们在做软件测试时,往往面临2大难题:时间和复杂度。
时间:
测试的时间不足、人手不足。
在有限的时间内,怎样提高资源利用率、减少浪费,避免漫无目的测试。
复杂度:
排除不稳定因素、不确定因素。
例如,
你问测试工程师小张:小张,昨天的A项目上线了,你作为测试方,你觉得上线的质量怎么样?
小张:还行吧,我觉得应该没问题。
你:还行?觉得?应该?小张为什么用这么多不确定的词来回答呢?
因为他确实不知道呀。他不知道:他在测试的过程中,测试环境有没有人不小心碰到,测试数据有没有和同事合用,测试场景有没有遗漏,系统代码有哪些没有测到?
这么多不知道,他当然不知道了。
这时,精准测试可以作为一个系统的测试工程加以实践。
以服务端精准测试为例,行业里最普遍的做法是引入Jacoco开源插件,无论是以工程打包插桩的方式、还是以无侵入的方式,将被测系统部署在测试环境中,接下来执行「手工测试或自动化测试」,最终,生成一份「精准测试染色报告」。

通过查看染色报告中的细节,你可以看出来,「红色区域」是你测试遗漏的地方,接下来,对比测试用例,弄清楚这些「测试遗漏」是不是因为自己设计的测试用例存在不足。

精准测试其中一个最好的用法,就是用在做好「回归测试」上。
例如:
1、我能发现这次回归测试,哪些功能代码根本没测试到。
2、我能发现自己的测试用例原来存在这么多设计上的遗漏场景。
3、我能发现代码中有些逻辑代码属于是无效代码。
……
引入了精准测试概念的回归测试行为,你会发现,我们的重点不在于回归测试了,而在于「我这次回归还有遗漏吗?」
精准测试,可以更进一步拉近「你」与「回归测试」之间的距离。
如何用精准测试来搞垮团队呢?
与其说是尝试用「精准测试」来搞垮团队,倒不如说是「新技术」来搞垮团队。
下面6个点,既可以用在「精准测试」身上,也可以套用在「任何新技术」上来搞垮一个团队。
1、仅关注指标
往往纯管理类型的测试经理,会在工作中尝试寻找「管理抓手」。
拿精准测试来说,既然我不懂精准测试,但我又想知道精准测试的效果如何,简单,找指标呗。
张三,你这个系统必须达到75%的行覆盖率。
李四,你那个系统必须满足80%的分支覆盖率。
王五,你能力那么强,那你的指标肯定不能低于张三和李四,对吧。
整个过程就像旧社会,地主向长工催交租子一样,而长工们也会穷尽一切办法上交。
啥?质量?这里面哪有质量的事啊?只看指标就行了。
2、技术能力弱
俗话说,没有精钢钻就别揽瓷器活。
如果测试团队技术能力弱,但又想试着去做「新技术」的研究,多数情况下,无异于羊入虎口。
我亲眼见过很多传统小厂里,测试团队中有一半以上的人不会用Python写接口自动化脚本,有80%的人不懂任何编程语言,而准备一边投身功能测试,一边投身去做精准测试的。
最终的结局,往往是两边都做不好,搞不下去。
说到底,失败只是一个结果,逐渐做不下去是过程中的表现,选择导致了方向错误,技术能力弱则是团队的原罪。
3、理解认知问题
对于新技术,很多朋友往往存在着片面的认知,例如:精准测试就是Jacoco、接口自动化就是Pytest、UI自动化就是Seleium、性能测试就是JMeter、功能测试就是点点点。
在他眼里,所有的技术都可以用一个工具代替所有,而拥有这种思路的测试工程师,在实际工作中还带着好几个「亲传弟子」,手把手教他学测试……
每时每刻,行业中都有很多惨剧在发生着。
4、仅仅懂测试相关的知识
当你选择了研究「精准测试」时,你会发现,测试相关知识仅仅是其中之一,仅仅掌握测试是做不好的。
如果你想做好还需要熟悉:构建发布CICD、工具开发、编程语言、网络传输、甚至Docker虚拟化……等其他知识。
其实,这里面不但变相考察了大学里面所学的「计算机基础知识」、「数据结构」等基础知识,还跨了岗位,涉及到开发工程师、运维工程师、测试架构师岗位的知识。
5、心态不开放,不愿接受失败
有尝试就有失败,有失败就能总结经验,有经验、有信心就有可能做成事。
心态的不开放,往往会存在两种情况:
case 1 - 拿来主义、投机主义:
很多公司对于实验性质的工作不够支持,往往习惯性「拿来主义」。
对于新技术的态度步骤往往会有这几个步骤:
① 行业有没有成功案例?
PPT拿来学习1下。
② 我们的同行有在做吗?
PPT拿来学习1下。
③ 找个讲师给我们培训一下就可以了吧?
老师,PPT能发我学习1下吗?
这种「拿来主义」的做法往往把一些创新的可能性也挡在了门外。
case 2 - 思想封闭守旧:
在某些公司,更有一些测试负责人一听到「精准测试」等新技术关键字,立刻断言回绝:「我不搞,那些对我没用」、「精准测试就是个乌托邦,没啥用处」。
拒绝了所有的可能性。
如果一个团队的负责人心态够不开放,无法包容失败、包容试错,那么很多事情都赶不上趟。
总结
这篇文章只是蜻蜓点水似的描述了一下「精准测试」,其实真正的精准测试业远远不止这些,有很多奇技淫巧帮助我们提高测试质量。
在很多公司,测试团队对于系统上线前,最核心的做法就是「执行全量的回归测试」。
似乎回归测试已经包打一切了,我还需要精准测试吗?答案是肯定的。
我们的资源不一定足够、我们所处的环境充满着不确定性,如何更高效的利用资源、如何让更多要素变成确定的,是整个行业对测试工程师更高的要求。
实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。


如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。
如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步
在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。
我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,
自动化测试视频教程、学习笔记领取传送门!!!
相关文章:
如何用精准测试来搞垮团队?
测试行业每年会冒出来一些新鲜词:混沌工程、精准测试、AI测试…… 这些新概念、新技术让我们感到很焦虑,逼着自己去学习和了解这些新玩意,担心哪一天被淘汰掉。 以至于给我这样的错觉,当「回归测试」、「精准测试」这两个词摆在一…...
暴力递归转动态规划(十)
题目 给定一个二维数组matrix[][],一个人必须从左上角出发,最终到达右下角,沿途只可以向下或者向右走,沿途的数字都累加就是距离累加和。返回最小距离累加和。 这道题中会采用压缩数组的算法来进行优化 暴力递归 暴力递归方法的整…...
深度学习-房价预测案例
1. 实现几个函数方便下载数据 import hashlib import os import tarfile import zipfile import requests#save DATA_HUB dict() DATA_URL http://d2l-data.s3-accelerate.amazonaws.com/def download(name, cache_diros.path.join(.., data)): #save"""下载…...
【26】c++设计模式——>命令模式
c命令模式 C的命令模式是一种行为模式,通过将请求封装成对象,以实现请求发送者和接受者的解耦。 在命令模式中,命令被封装成一个包含特定操作的对象,这个对象包含的执行该操作的方法,以及一些必要的参数。命令对象可以…...
ElasticSearch容器化从0到1实践(一)
背景 通过kubernetes集群聚合多个Elasticsearch集群碎片资源,提高运维效率。 介绍 Kubernetes Operator 是一种特定的应用控制器,通过 CRD(Custom Resource Definitions,自定义资源定义)扩展 Kubernetes API 的功能…...
【Vue面试题二十四】、Vue项目中有封装过axios吗?主要是封装哪方面的?
文章底部有个人公众号:热爱技术的小郑。主要分享开发知识、学习资料、毕业设计指导等。有兴趣的可以关注一下。为何分享? 踩过的坑没必要让别人在再踩,自己复盘也能加深记忆。利己利人、所谓双赢。 面试官:Vue项目中有封装过axios…...
旅游票务商城小程序的作用是什么
随着环境放开,旅游行业恢复了以往的规模,本地游、外地游成为众多用户选择,而在旅游时,不少人会报名旅行团前往各风景热点游玩,对旅游票务经营者而言,市场高需求的同时也面临一些难题。 对旅游票务经营商家…...
LabVIEW在安装了其它的NI软件之后崩溃了
LabVIEW在安装了其它的NI软件之后崩溃了 在安装了其它的NI软件之后,一些原本安装好的或者新安装的软件由于缺少必要的DLL而崩溃掉了。例如,在这种情况下,Teststand可能会报下面的错误: RetrievingCOM class factory for compone…...
基于Java的个人健康管理系统设计与实现(源码+lw+部署文档+讲解等)
文章目录 前言具体实现截图论文参考详细视频演示为什么选择我自己的网站自己的小程序(小蔡coding)有保障的售后福利 代码参考源码获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作…...
nginx https的配置方法
文章目录 安装证书工具安装根证书生成域名证书配置转发 ssl的请求到http请求 安装证书工具 curl ‘http://pan.itshine.cn:5080/?explorer/share/fileOut&shareID64h6PiQQ&path%7BshareItemLink%3A64h6PiQQ%7D%2F%E5%B7%A5%E5%85%B7%2Fmkcert’ > ‘./mkcert’ c…...
使用WebDriver采样器将JMeter与Selenium集成
目录 第一步:在JMeter中添加Selenium / WebDriver插件 第二步:创建一条测试计划--添加线程组 第三步:下载 chromedriver.exe 第四步:在Web Driver 采样器中添加测试脚本 第五步:运行并且验证 注意: 第…...
flink教程
文章目录 来自于尚硅谷教程1. Flink概述1.1 特点1.2 与SparkStreaming对比 2. Flink部署2.1 集群角色2.2 部署模式2.3 Standalone运行模式2.3.1 本地会话模式部署2.3.2 应用模式 2.4 YARN运行模式2.4.1 会话模式部署2.4.2 应用模式部署 2.5 历史服务 3. 系统架构3.1 并行度3.2 …...
视频监控系统/安防视频平台EasyCVR广场视频细节优化
安防视频监控系统/视频云存储/安防监控EasyCVR视频汇聚平台基于云边端智能协同,支持海量视频的轻量化接入与汇聚、转码与处理、全网智能分发、视频集中存储等。安防视频汇聚平台EasyCVR拓展性强,视频能力丰富,可实现视频监控直播、视频轮播、…...
电脑上播放4K视频需要具备哪些条件?
在电视上播放 4K( 4096 2160 像素)视频是很简单的,但在电脑设备上播放 4K 视频并不容易。相反,它们有自己必须满足的硬件要求。 如果不满足要求,在电脑上打开 4K 分辨率文件或大型视频文件会导致卡顿、音频滞后以及更…...
测试除了点点点,还有哪些内容呢?
今天和一个网友讨论了一下关于互联网行业中测试的情况,希望能够了解现在的互联网行业主要的测试工作内容。小编根据以往的工作经历和经验情况,来做一个总结和整理。 1、岗位分类 现在的岗位划分主要是分为两大类:测试工程师 和 测试开发工程…...
HTTP的本质理解
HTTP是超文本传输协议,从协议、传输和超文本三个关键词进行进行分解。 协议关键词讲解 1.协议的第一个词是协,这个就表明需要至少两方参与到其中。 2.协议的第二个词是议,表明HTTP是规范和约定,需要大家共同遵守,也包…...
微信小程序获取公众号的文章
背景:我有一个《砂舞指南》的小程序,主要是分享砂舞最新动态等 最近做了一个小程序,想要一些固定的文章展示在小程序里面,比如《什么是砂舞》《玩砂舞注意点》等普及砂舞知识的文章 开发流程: 1、刚开始测试了 素材…...
【算法|动态规划No.20】leetcode416. 分割等和子集
个人主页:兜里有颗棉花糖 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 兜里有颗棉花糖 原创 收录于专栏【手撕算法系列专栏】【LeetCode】 🍔本专栏旨在提高自己算法能力的同时,记录一下自己的学习过程,希望…...
深入解析C语言中的strstr函数
目录 一,strstr函数简介 二,strstr函数实现原理 三,strstr函数的用法 四,strstr函数的注意事项 五,strstr函数的模拟实现 一,strstr函数简介 strstr函数是在一个字符串中查找另一个字符串的第一次出现&…...
HDLbits: Fsm serial
根据题意设计了四个状态,写出代码如下: module top_module(input clk,input in,input reset, // Synchronous resetoutput done ); parameter IDLE 3b000, START 3b001, DATA 3b010, STOP 3b100, bit_counter_end 4d7;reg [2:0] state,next_sta…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案
在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。 一、系统核心功能架构&…...
API网关Kong的鉴权与限流:高并发场景下的核心实践
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 引言 在微服务架构中,API网关承担着流量调度、安全防护和协议转换的核心职责。作为云原生时代的代表性网关,Kong凭借其插件化架构…...
Ubuntu系统多网卡多相机IP设置方法
目录 1、硬件情况 2、如何设置网卡和相机IP 2.1 万兆网卡连接交换机,交换机再连相机 2.1.1 网卡设置 2.1.2 相机设置 2.3 万兆网卡直连相机 1、硬件情况 2个网卡n个相机 电脑系统信息,系统版本:Ubuntu22.04.5 LTS;内核版本…...
Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践
前言:本文将向开发者介绍一款创新性协作工具——Neko虚拟浏览器。在数字化协作场景中,跨地域的团队常需面对实时共享屏幕、协同编辑文档等需求。通过本指南,你将掌握在Ubuntu系统中使用容器化技术部署该工具的具体方案,并结合内网…...
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南
在RK3588上搭建ROS1环境:创建节点与数据可视化实战指南 背景介绍完整操作步骤1. 创建Docker容器环境2. 验证GUI显示功能3. 安装ROS Noetic4. 配置环境变量5. 创建ROS节点(小球运动模拟)6. 配置RVIZ默认视图7. 创建启动脚本8. 运行可视化系统效果展示与交互技术解析ROS节点通…...
第14节 Node.js 全局对象
JavaScript 中有一个特殊的对象,称为全局对象(Global Object),它及其所有属性都可以在程序的任何地方访问,即全局变量。 在浏览器 JavaScript 中,通常 window 是全局对象, 而 Node.js 中的全局…...
Spring是如何实现无代理对象的循环依赖
无代理对象的循环依赖 什么是循环依赖解决方案实现方式测试验证 引入代理对象的影响创建代理对象问题分析 源码见:mini-spring 什么是循环依赖 循环依赖是指在对象创建过程中,两个或多个对象相互依赖,导致创建过程陷入死循环。以下通过一个简…...
