• 10
  • 10
分享

  从去年决定跳出舒适区,应聘大厂,截止到目前已经将近一年,值此之际,总结下自己近一年在大厂的经历。

  希望通过我的感触,能够帮助你们进一步了解大厂的测试工作。

  维护上下游合作关系

  在大厂,人际关系非常重要,为什么要把它放在第一位,是因为在大厂里做测试的时候,所涉及的系统错综复杂,种类繁多,经常要进行上下游的联调测试。

  我刚开始的时候,测试联调找不到相关的责任人,使得自己在测试工作中浪费了大量的时间和精力,所以进入大厂之后,一定先要:

  首先,梳理自己负责系统的上下游联系人,将其联系方式整理起来,方便后续查询联络,可以参考下面表格进行简单汇总即可。

1-1.png

  其次,维护好自己与前辈的关系,保持自己的谦逊态度,无论您的工作经验多么丰富,对于新公司,您就是新人,遇到不懂的流程、业务要多问多总结。

  最后,你入职后,可以通过公司指定平台学习入职规范以及后续工作展开需要的系统、工具,入职前几天,一定要珍惜机会,认真阅读,常用的功能最好自己操作一遍,会为后续工作节省时间。

  遵守规范别掉队

  在大厂的第二点感触是,测试流程非常规范,一般情况下都要严格按照软件生命周期的步骤进行推进,具体执行过程为:

1-2.png

  需求分析阶段:业务先进行 BRD 评审->产品输出需求文档,在进行 PRD 评审->然后开发出相应的架构设计,且测试、研发要给出工作排期,而后项目经理推进项目立项。

  需求研发阶段:而后进入到需求研发阶段,这个时候测试就要开始介入输出相应的测试计划、测试资源安排以及测试用例。

  研发研发完毕,提测前要过研发的设计文档,测试的用例评审,二者都过了之后要周知项目组。

  产品进入到测试阶段,测试先进行冒烟测试,冒烟测试通过则开始进行分支测试,分支测试完成进入到主干测试,然后进行预发测试,都完成后等待上线,发出上线前的测试完成报告。

  项目上线完成后要进行线上验证,线上验证完成后,研发、测试要同时发出上线公告以及上线完成报告。再由项目经理要周知到业务方进行功能验收,项目进入到验收阶段。

  可以看到在大厂中,每一步的测试工作都必须严格按照规范进行,不允许出现遗漏,哪一个环节没有按照要求进行,后面出了问题,第一责任人就是你。

  重视业务勿放松

  还有最需要强调的一点,不要一味的去追求技术而轻视业务。

  技术只是解决问题的辅助手段,且技术的迭代更新快速,我们必须要切记软件测试的初衷——“user story”,用户故事。

  也就是要了解业务需求,在大厂你必须了解上下游的业务,如果一味的只关注于自己测试的系统,无异于管中窥豹。

  且对于业务的熟稔程度,绝不仅仅是依赖于需求文档描述中的只言片语,这里笔者将自己为了了解业务而问的问题分享给大家。

1-3.png

  上面的产品三问如果产品回答的与自己理解有偏差或者没有彻底解决自己的疑惑,这个时候一定要深入业务,否则就会有风险。

  例如我们最常见的下载功能,如果我们只按照功能测试的思路,将文件正常下载、查阅没问题就认为通过,进而觉得没必要去了解业务,到了线上用户下载的数据量巨大,数以百万计,大概率就会暴露出超时下载的异常,可能您会说这不应该是性能测试所考虑的吗?

  我们要知道,我们作为系统测试的执行者,虽然不必去做全链路的性能测试,但是性能的漏洞必须要敏锐识别,这样早些了解线上实际发生的下载量以及未来一段时间的预估量,而后模拟造数,进行下载,完全可以在测试环境就将该问题进行暴露且及时解决。

  技术有专攻

  大厂的技术栈非常丰富,MQ、缓存、微服务、React、Mobx等等,看起来琳琅满目。

  我们不可能一口吃个胖子,将所有的技术在短时间内吃透,这个时候就需要我们立足于自己的测试项目向外延伸,遇到不懂的多学习、多积累,且学习的目标以快速使用为前提,重要理论为辅助。

  例如遇到测试的项目,开发采用了缓存技术,我们作为测试之前并没有接触过,这个时候必须先快速弄清楚:

  缓存是什么?

  我们用的是一级缓存,还是二级缓存?

  具体某个缓存的 key 是什么,value 又是什么

  缓存失效的条件是什么?

  快速掌握住上面问题就可以了,你完全就可以去胜任测试涉及缓存的系统。

  那么接下来就是你提升的时刻,你可以自己在本地仿照公司的技术栈,本地搭建一套缓存,切实使用下,那么是否有适合测试应用的场景呢?

  答案是肯定的,比如我们做自动化的时候,需要将用例的预期结果与实际执行结果做判断,这个时候,我们完全可以将预期结果放置在缓存中,在和实际结果比对,这就是一个很好地应用缓存的场景,这样下来,你对缓存从无知到了解再到应用,就形成了一个完整的学习闭环,以此类推,其他新的技术你也肯定可以很快掌握。

  最后无论身在大厂,亦或是想要进入大厂,都能从我的经历中有所收获,长路漫漫,我们一起加油!



作者:海宝   

来源:http://www.51testing.com/html/60/n-4477660.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   背景  事件的起因在于老板最近的两次“故障”,一次去年的,一次最近。共同原因都是脚手架在发布平台发布打包时出错,导致线上应用白屏不可用。  最神奇的是,事后多次 Code Review,结果还是没有发现任何能够导致该问题的 bug,最后推测有可能是服务器在发布打包的时候出了问题。  当老板第 N + 1 次吐槽因为他写的工程化工具领来的天外飞锅,我突然思考起来,如何才能避免这种天外飞锅。  归根结底,导致这类线上故障的原因都是在于打包上线的代码没有经过验证。针对这个问题,有两种方法可以解决:  治本  由于请求地址不同,预发(测试)版本不可直接发线上,而线上版本缺少了上线之前的验证过程。所...
            0 0 831
            分享
          •   死锁就是有一天你回家,拿着一把钥匙使劲往锁眼里面捅,结果钥匙断里面了,所以你就叫开锁师傅要开锁,结果锁给开死了,这就是死锁了。以上仅仅是玩笑话,以下步入正题。  什么是死锁?  要了解什么是死锁,要首先明白一点,锁是用来做什么?Java中的锁说白了,就是为了保证资源安全,确保一次仅有一个线程对共享资源进行修改。(以上仅为个人理解,如有问题,请评论讨论。)那死锁的概念就好理解了,就是有两个及以上的线程对同一个资源进行争夺,结果两个线程没有一个让步,并且没有任何的外力进行协调导致的一种僵局。  例1:马路上就只有一条道,刚好两辆车都到了,两司机开始吵架说,是我先到的,没有一个让的,而刚好这条路...
            0 0 991
            分享
          •   有没有遇到这样的一个场景:你在使用浏览器进行web应用测试,但是你想知道你在测试过程中的前端输出和后端响应的情况究竟如何。那么,你会怎么做呢?想必大多人会毫不犹豫地回答:通过浏览器console面板和network面板抓取信息啊!的确如此,这不失为一个好办法。  但是,这难道需要时时刻刻地关注面板输出吗?这实在是有碍测试效率啊。那么,有什么办法,既不阻碍测试效率,也能获取到相应的信息呢?  答案当然是肯定的。  不得不说的ResourceSaver  有这么一个浏览器插件,它可以记录你在浏览器上的所有操作(例如,点击、输入等),提供了css、js、img和xhr等资源的下载,能够帮助你进行...
            0 0 1457
            分享
          • 1.渗透测试流程和工具?渗透测试流程概述 前期交互阶段、情报搜集阶段、威胁建模阶段、漏洞分析阶段、 渗透攻击阶段(Exploitation)、后渗透攻击阶段(怎么一直控制,维持访问)、报告阶段。 攻击前:网络踩点、网络扫描、网络查点 攻击中:利用漏洞信息进行渗透攻击、获取权限 攻击后:后渗透维持攻击、文件拷贝、木马植入、痕迹擦除第一阶段:明确渗透目标 和风险分析获得授权(1)确定范围如:IP、域名、内外网、整站、部分模块等(2)确定规则能渗透到什么程度,是发现漏洞即可还是需要利用该漏洞、时间限制、能否修改上传、能否提权等目标系统介绍、重点保护对象及特性。是否允许破坏数据?是否允许阻断业务正常运...
            0 0 2494
            分享
          •   1 引言  1.1背景  随着Android应用越来越壮大,对应代码量显著增加,代码逻辑也日趋复杂,此时需要采取一定的行动去保证代码质量,减少逻辑漏洞等,于是严格地执行单元测试编写任务,将单元测试落实到平常开发和维护任务当中去,就是很重要的一环,不可忽视。  然而,很多应用开发者之前并未编写过单元测试代码,那么如果有一篇通俗易懂并带有操作步骤的文章,能帮助应用开发者完成从单元测试小白到入门的过渡,就再好不过了,于是本文就是在此情况写就的,如有不好之处,请多多包涵,谢谢。  1.2 术语和缩略语  2 闲谈单测  2.1 说说我理解的单测  2.1.1 对测试金字塔的理解  本文所指的单测,...
            0 0 1809
            分享
      • 51testing软件测试圈微信