这次我们谈谈一个软件测试工程师的核心竞争力到底是什么?

测试baby 测试baby     2022-12-05     538

关键词:

在这里插入图片描述
作为一名测试人员,到底其真正的核心竞争力是什么?这个问题一直困惑着我,当我还未曾踏入这一行业的时候,听到的声音是这样的:“测试是一种很有前途的工作,需求大于供给”、还有一种是这样的“测试就要做接触到代码的,点点鼠标谁都……”怀着对于一个行业我也不知道好还是坏,到底是个什么玩意的心理选择并进入了这个行业。期间,我承认,的确有那么一段时间,我认为作为一名测试如果能够对于代码了如指掌,能够写出一个个的工具才有可能成为武林的盟主,寿与天齐。似乎,作为测试来说最核心的竞争力就是对于代码的掌握程度,除此以外,那些什么功能测试的用例似乎就是个最低端,最没有价值的产出而已。

但是就今天看来,就我现在自己遇到和看到的一些问题和现象,我开始对自己的一些想法有了挑战。例如:现在很多组都在做和预研一些代码级别的测试工具,例如覆盖率工具啦,代码扫描工具了(主要是遵循相关的语法规则做一些例如是否有空指针风险,是否有未定义的变量,是否if else的分支条件互斥等)、当然还有一些高端的通过业务流回溯的方式来对每一条分支进行检查,只要有风险存在就发出邮件给对应的干系人。表面看起来非常的高端,大气,上档次,一切都在自动化,一切看起来都在掌握之中。翻手为云,覆手即可为雨。但是实际情况呢?代码在进行了自动扫描也好,覆盖率统计分析也好,最终产品外放后的质量还是体现在了功能测试的实际,实质结果上。这样说,显的好晦涩,举个栗子吧~~~

XX项目,引入了hudson构建自动集成方案,并且前后台都有接入,这样,在开发提交代码转测之后,功能测试不出意外会如期进行,代码后台自动扫描,结果也会mail给对应的人。在一切具备,作为东风的版本到来之后,噼里啪啦的就开始了,然后外放,,,然后,,,,然后就苦逼了,~~~为啥?版本外放之后,“游戏道具神秘消失,客户端莫名崩溃、宠物实际得到的数值与预期不一致,,,,”好吧,你niubility,,,走紧急更新、关外网功能阀门,出公告…….然后就进行了一段研发调试,测试提单,研发分析,测试分析,DAI编写,QA审计,leader审计的历程~~~

其实,引起这些问题的根本原因在找到之后,我们事后来看,都会觉得,为虾米?这样的问题应该很容易想到啊?我只想说,事后人人都知道赤壁之战的当晚要注意防风,不能报以黑天鹅的心态,何况在事前我们可能根本都不知道还有天鹅一说,就更加别说什么黑与白了。什么意思?别急,给我点时间打字,慢慢码~~~

首先:第一个祝福神秘消失,最后找到引起的原因为“前台客户端在网络波动较大的时候,服务器的回报没有到达客户端之前,客户端的button和相关数据没有刷新,导致玩家可以进行第二次对于button的操作,发出2个请求到服务器,服务器在处理完第一个请求,check result为success之后,扣除了玩家的初级物品,生成一个高级物品返回给玩家,,,注意,此时第二个请求到达了服务器,不凑巧,也是命中了成功的概率,此时服务器的处理方式为只要概率命中为了避免给我司带来损失,先扣除用于进化的低等级物品,然后再逐步扣除其余的依赖物,最终返回给玩家高等级物品。这个时候就有问题了,第一个请求的物品成功了,是需要扣除进化道具的,扣除道具后,对于第二个请求来说,实际是不满足需要的道具数的,但是后台的处理逻辑是只要命中概率,success则认为就会成功,这个时候为了避免损失,先扣物品,这个时候,到了第二步来扣除道具的时候,发现余额不足,,,返回失败,但是,,,亲,人家第一次success成功的道具就特么的,,,没了~~~这个代码覆盖率是OK的(有对应的检查升级的用例),代码扫描也是ok的,因为判空做的很到位,,,但是这个问题 的root cause是 设计上的缺失,导致了逻辑处理上存在问题。这个我们通过自动化,仅仅通过阅读代码扫描结果是发现不了的。只能通过用例设计的时候去发现,不凑巧,用例设计中没有这一块:弱网络的用例设计,,,从而,say goodbye,只能对玩家报以卖萌一笑,后台log查证再补偿玩家了~~~

其次:客户端异常崩溃,这个问题的root cause又是什么呢?先用事后的眼睛看,造成客户端异常崩溃的原因为:客户端前端的物品刷新不是实时的(这个可以理解,因为谁会闲的蛋疼,实时去跟后台做数据查询的交互,又不是对数据实时性要求很高的功能,就一个查询摆摊物品的功能,从CAP的角度来说,的确可以接受牺牲实时性。但是,就因为这个原因,当玩家选中的物品摊主在玩家点击购买前下线了,此时这个时候玩家点击购买,不好意思,空指针异常======)core。那么这个bug为啥没有通过代码前期的检查工作得以暴露呢?原因是:工具本身的不足导致在做判空检查时,遇到有break的业务流分支时,不支持业务流分支的检查(后来听说引入coverity可以解决,目前引入中,但是据说收费也不菲)。这个bug导致外网刚一更新就要走一个紧急更新,说实话,当这种情况出现多了的时候,哪怕作为测试组你前面加班个十天,半个月在项目组看来,在外人看来都觉得你们前面的付出是没有意义的,因为此时的1决定了你前面的付出等于一万个零。

好了,这样的例子不举了,总之,当我遇到的问题越来越多,对于根本原因查询进行思考后,我现在开始会问自己,作为测试的从业者来说,代码的掌握程度是否真如传说的那么高端,重要,不可替代?还是说,我们的方向错了,我们作为一名测试从业者来说,对于武器的选择上太过于神话某种道具了,以为得此神器则天下可定?可实际结果,往往大相径庭。

那么说了这么多,对于测试来说最主要的核心竞争力是什么呢?我个人觉得是否可以理解为以下几点:

1、 快速学习和思考的能力,此特技主要用于需求快速理解,提升问题发现深度和效率,广度。

2、 问题发散能力。此特技主要用于对于影响面的归纳和总结,覆盖

3、 沟通,协调能力。此特技主要用于推动问题的解决和资源间的合理协调,保障项目上人品配比的需求

4、 总结。此特技主要用于经验的获取,等级的提升,迈向高富帅

最后,只想说,在知道做正确的事情之后应该要思考怎样正确的做事,只有这样才能在对的方向上越走越远,当然,我并不是就说我的理解就是对的,只是本着独思而无友,必孤陋而寡闻的心态,在此借地跟大家做一个交流。伙伴们,我们是不是又到了该思考,如何构建一个用例设计体系(通用体系)集我测试众人的精华构筑的一个用例生产体系的时候了。这样,结合我们的代码扫描和覆盖率从而更好的保障外网质量,获得更多更高的认可呢?

在这里插入图片描述

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

关注我的微信公众号【伤心的辣条】免费获取~

送上一句话:

世界的模样取决于你凝视它的目光,自己的价值取决于你的追求和心态,一切美好的愿望,不在等待中拥有,而是在奋斗中争取。

我的学习交流群:902061117 群里有技术大牛一起交流分享~

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!

好文推荐:

转行面试,跳槽面试,软件测试人员都必须知道的这几种面试技巧!

测试岗反复跳槽,跳着跳着就跳没了…

软件测试人员该学习 Python 的七个理由

App公共测试用例梳理

面试经:一线城市搬砖!又面软件测试岗,5000就知足了…

35岁之后软件测试工程师靠什么养家?我能继续做测试!

作为技术工程师,到底需要怎样的专业能力

...扛不住变化。因为最大的不变就是变化。那么,作为技术工程师,我们到 查看详情

09|软件测试工程师的核心竞争力是什么?

传统测试工程师师应该具备的核心竞争力第一项核心竞争力,测试策略设计能力测试策略设计能力是指,对于各种不同的被测软件,能够快速准确地理解需求,并在有限的时间和资源下,明确测试重点以及最适合的测试方法的能... 查看详情

06软件测试工程师的核心竞争力是什么?

一、教程里这句话总结的比较好:  只有当自己真正明白了自己的核心竞争力,才能理清“应该做什么”和"应该怎么做"这两个问题,才能朝着正确的方向前行二、根据作者列举的两个案例并写的总结:  作为测试人... 查看详情

测试工程师竞争力

标签(空格分隔):竞争力传统测试工程师师应该具备的核心竞争力试工程师要具备的七项核心竞争力,包括:测试策略设计能力、测试用例设计能力、快速学习能力、探索性测试思维、缺陷分析能力、自动化测试技术良好的沟... 查看详情

浅谈如何提高产品质量?

...到底如何做才能提高产品质量?就我个人而言,我是一名软件测试工程师,那么我应该在日常的工作中做出怎样的努力,才能为提高产品质量做出一份贡献?首先我们就以软件测试流程作为规范,分析测试员能为提高产品质量做... 查看详情

字节跳动核心竞争力到底是什么?

...品app,除了搭上了移动互联网的春风,其企业自身的核心竞争力也得到了极大的体现。因此,对其核心竞争力进行一定的分析,抓住对自身团队有益的核心逻辑,予以学习和实践就变得很有价值了。文本首先从组织的角度分析字... 查看详情

谈谈到底什么是抽象,以及软件设计的抽象原则(代码片段)

我们在日常开发中,我们常常会提到抽象。但很多人常常搞不清楚,究竟什么是抽象,以及如何进行抽象。今天我们就来谈谈抽象。什么是抽象?首先,抽象这个词在中文里可以作为动词也可以作为名词。作为动词的抽象就是指... 查看详情

android大厂面试指南:他们到底需要怎样的工程师?

本文来自于腾讯内圈Android大佬分享的面经总结刚加入IEG团队做QQ音乐时,那会儿我才毕业大半年,**就在思考这个问题,只不过当时更专注于Android开发领域:安卓开发的核心竞争力是什么?**我有一个专门的笔... 查看详情

软件工程网络201521123110阅读作业2-提出问题

...重要,究竟什么是软件工程的核心灵魂呢?2.P48中的软件工程师的职业发展是不是符合我们这个网络工程的专业?因为众所皆知,软件工程也是一个专有专业,我们作为网络工程的学生,如果按照书中道路前行,究竟会发生怎么... 查看详情

结合嵌入式行业认识,谈谈嵌入式软件工程师的发展路径

谈谈自己对嵌入式行业的认识以及对当前市场行情、人才需求的看法。关于嵌入式,它涉及到全社会生活的方方面面,一个嵌入式装置一般都由嵌入式计算机系统和执行装置组成,嵌入式计算机系统是整个嵌入式系统的核心,由... 查看详情

软件测试之接口自动化测试的“能”与“不能”到底能不能?我来告诉你!

...ff0c;算是近几年比较火热的一个话题,当然,更是软件测试未来的一个发展趋势。未来,功能测试等非核心的测试工作,都将被外包。想要在软件测试这个行业继续前行,就必须拥有核心竞争力,掌握自动... 查看详情

算法工程师的核心竞争力

工作以来一直在思考算法工程师这个岗位的核心竞争力,自己的心路历程分为三个阶段。一、第一阶段这一阶段我认为算法工程师的核心竞争力是对模型的理解,对于模型不仅知其然,还得知其所以然。于是我把目标... 查看详情

软件工程展望

首先、谈谈对软件工程这门课程的理解。什么是软件工程?顾名思义,是一门与软件和工程学相关的课程。软件工程核心是什么?其核心在与了解软件的生产过程及软件的具体实现过程。软件工程的为什么是工程,有软件不就好... 查看详情

[软件人生]也谈谈支付宝五福

...过了昨天的大乱,突然想写点东西,确实是想谈谈支付宝这次的活动。红包活动经历了两年,起点应该从去年微信与央视春晚的合作震惊了全国谈起,那一刻,真的是让所有的人都感觉到了移动互联网时代的到来。1、各方评论... 查看详情

资本寒冬,应届生被裁,亲身经历从被裁到上岸,我们该如何自渡?如何保持核心竞争力?

...,从被裁到上岸,我们该如何自渡?如何保证自己的核心竞争力?反响很好。但是吧,我犯了一个错误,敖丙提醒我的。太难了,失业这几天没发原创,连个原创都忘记标了,真是傻??。所以我今天又放了一次次条,这次可标了... 查看详情

《人件》读后感

...的故事,却没有产生一个有国际影响的软件品牌或有国际竞争力的民族软件企业,相比,印度的软件业崛起,产值10年增长了10倍,在经济发展上我们可能要领先他们10年,但软件产业却落后将近10年,原因何在?  几乎所... 查看详情

软件工程基础开课之序

...是信息化的核心之一,软件产业展现国家科技发展的核心竞争力,体现国家的综合实力。随着软件工程的迅猛发展,新的技术、方 查看详情

阿里java架构师谈谈架构和如何成为一个java架构师

...是可操作的软件。具体来说,这是一个表达式,它使软件工程师能够:分析满足监管要求的设计有效性。在设计更改相对容易的阶段,请考虑架构的可能选项。降低与软件构建相关的风险。软件架构的重要性我为什么说软件架构... 查看详情