一个处女座的测试

一个处女座的测试

测试行业每年会冒出来一些新鲜词:混沌工程、精准测试、AI测试…… 这些新概念、新技术让我们感到很焦虑,逼着自己去学习和了解这些新玩意,担心哪一天被淘汰掉。

以至于给我这样的错觉,当「回归测试」、「精准测试」这两个词摆在一起,「回归测试」立刻就显得有些低级。我们愿意花时间去学习更新鲜的东西,也不愿意花费更多时间去研究如何做好「回归测试」这类老生常谈的工作。

所以,每隔一段时间我都会试着问问自己:「这项新技术的本质是什么?」、「和传统测试技术的关系是什么?」、「我为什么要学习它?」、「只是一个空洞的概念?还是有落地的实际方案?」、「公司内有适合推广的土壤吗?」……

如何用精准测试来搞垮团队?-LMLPHP

弄清楚了这些问题后,我发现自己甄别出了:哪些技术我要学习,哪些技术我完全不需要学习。

最后,我也就不焦虑了。

精准测试是什么?

精准测试 是一套计算机测试辅助分析系统。精准测试所涉及的核心范围包含:软件测试用例和代码的双向追溯、智能回归测试用例选取、覆盖率分析、缺陷定位、测试用例聚类分析,这些功能完整的构成了精准测试技术体系。

用大家能听懂的话来说,我们在做软件测试时,往往面临2大难题:时间复杂度

时间:

测试的时间不足、人手不足。

在有限的时间内,怎样提高资源利用率、减少浪费,避免漫无目的测试。

复杂度:

排除不稳定因素、不确定因素。

例如,

你问测试工程师小张:小张,昨天的A项目上线了,你作为测试方,你觉得上线的质量怎么样?

小张:还行吧,我觉得应该没问题。

你:还行?觉得?应该?小张为什么用这么多不确定的词来回答呢?

因为他确实不知道呀。他不知道:他在测试的过程中,测试环境有没有人不小心碰到,测试数据有没有和同事合用,测试场景有没有遗漏,系统代码有哪些没有测到?

这么多不知道,他当然不知道了。

这时,精准测试可以作为一个系统的测试工程加以实践。

以服务端精准测试为例,行业里最普遍的做法是引入Jacoco开源插件,无论是以工程打包插桩的方式、还是以无侵入的方式,将被测系统部署在测试环境中,接下来执行「手工测试或自动化测试」,最终,生成一份「精准测试染色报告」。

如何用精准测试来搞垮团队?-LMLPHP

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

如何用精准测试来搞垮团队?-LMLPHP

精准测试其中一个最好的用法,就是用在做好「回归测试」上。

例如:

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 - 思想封闭守旧:

在某些公司,更有一些测试负责人一听到「精准测试」等新技术关键字,立刻断言回绝:「我不搞,那些对我没用」、「精准测试就是个乌托邦,没啥用处」。

拒绝了所有的可能性。

如果一个团队的负责人心态够不开放,无法包容失败、包容试错,那么很多事情都赶不上趟。

总结

这篇文章只是蜻蜓点水似的描述了一下「精准测试」,其实真正的精准测试业远远不止这些,有很多奇技淫巧帮助我们提高测试质量。

在很多公司,测试团队对于系统上线前,最核心的做法就是「执行全量的回归测试」。

似乎回归测试已经包打一切了,我还需要精准测试吗?答案是肯定的。

我们的资源不一定足够、我们所处的环境充满着不确定性,如何更高效的利用资源、如何让更多要素变成确定的,是整个行业对测试工程师更高的要求。

实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

如何用精准测试来搞垮团队?-LMLPHP如何用精准测试来搞垮团队?-LMLPHP

如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步

在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。

我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,

自动化测试视频教程、学习笔记领取传送门!!!
如何用精准测试来搞垮团队?-LMLPHP

10-16 03:50