• 0
  • 0
分享
  • 公司就你一个测试?别慌!3招教你轻松应对——软件测试圈
  • 曼倩诙谐 2024-02-23 10:53:50 字数 3468 阅读 451 收藏 0

  长久以来测试都有一个困扰的问题,就是如果面试去了一家公司,发现项目组或整个部门就自己一个测试,该怎么办呢?很多大厂的娃可能会觉得这很夸张,我可以负责任的说,这是司空见惯的事,我之前就去过两家这样的公司,整个部门就我一个测试,所以我同时兼职两个项目的测试工程师,是不是天方夜谭?那么很多人遇到我这种情况肯定会不知所措,觉得一个人对接开发,对接产品,也没什么流程,不知道该做什么,更没有公司前辈的经验可借鉴,这种情况该怎么办?今天就花点时间来讨论一下。

  为什么会有这样的现象?

  首先我们来分析一下,为什么现在这么多公司都只有一个测试人员呢?我总结了两点主要原因:

  第一:很多公司都是初创型的小微企业,或者刚建立的软件部门

  第二:国内对软件测试不够重视

  如果只有你一个测试员会怎么样?

  如果刚接触测试行业的同学遇到这种情况,一般都是比较绝望和无助的,因为我是过来人,是有切身体会的,我大概列举一些弊端:

  1.测试流程极度不规范。不是测试人员不想规范,而是公司其他成员缺乏配合测试的一些常识,而且管理层也不会为了测试来制定一套切实可行的流程,而测试人员去跟其他团队成员约定一些测试流程时,其他人也不太愿意配合,这主要还是测试人微言轻。而且这种情况下,很多时候开发完丢个包就给测试了,不会做好版本划分,也不会告知此次版本修改了哪些地方,需要重点观察哪些地方可能会引发问题,甚至开发有时候为了偷懒连自测都省了,因为缺少强有力的考核机制,他们自测任务都甩手扔给测试,如果你写好冒烟测试用例给他们,他们也只会应付一下。

  2.时间紧压力大。这都不用我多说,想想看,一个公司才一个测试,可能这一个人还兼几个项目的测试,可想而知测试员的压力了。

  3.测试覆盖面受限。一个人难以覆盖所有可能的测试场景,特别是在复杂的系统中。

  4.被团队孤立。这里并非说是人缘上被孤立,而是工作上被孤立。想想国内动辄11:1的开发测试比,测试人员如果就一人,就特别的弱势了,开发有可能联合起来针对你提出的建议和提的bug,同时你也很难找到人分享经验和问题,更难找到测试方面的帮助。开发对测试工作也没有认同感,经常连续修改或者新增加需求,测试基本都是按照开发的节奏来开展工作。测试花大力气提的Bug,开发会消极对待,甚至有时候还不认可有些Bug还跟测试争起来,而且由于之前缺乏有效的约束开发的机制,所以在解决Bug的过程中会产生很多不愉快。有时候产品更改需求也不知会测试,项目偷偷上线也不会告知测试,测试就像是边缘角色。

  5.任务多样性。作为唯一的测试员,可能需要同时处理不同层次和类型的测试任务。而且更可气的是有些项目经理在对测试策略的可行性上知之甚少,我待过一家公司,在我一个测试员的情况下,还要求我在完成各项功能测试的同时,写出自动化脚本去执行,那个项目本来就是UI和接口很不稳定的阶段,所以我们会在不被理解的情况下被要求去做各种不合理的事情,如果遇到一定不能默默承受,一定要说出实际情况的困难之处。

   以上种种问题的存在,是会让测试员的工作质量和效率大打折扣的,同时较容易引发较多的潜在Bug,到时候这些暴雷,出了问题又反过来追责测试,导致测试里外不是人,我说的这些应该也是很多同学正在经历的吧?!

  测试员该怎么办呢?

  这篇文章并非单纯吐槽,而是针对遇到的这类窘境分享一些可行的经验,以下就是我的一些个人建议:

  1.和直属领导沟通

  毫无疑问首先就是要去找领导沟通,说明目前自己的难处,询问领导有什么样的测试岗规划,希望测试达成什么样的目标等等。既然公司招了测试,肯定是希望测试能够给公司产生效益,那么肯定也会尽量让这个岗位的工作顺利开展,这个时候他们是很乐意接受测试人员的意见和建议。

  1)跟领导说明只有一名测试时,是无法完成多种和多场景的测试任务的,同时罗列工作的轻重缓急,率先保证高优先级工作的质量和效率,等高优先级的任务完成再去覆盖次优先级的工作;

  2)跟领导说明只有一名测试时,需要团队其他人员协助测试工作,特别是版本迭代频繁,或者测试任务重的时候,需要其他人员支援做些基础的功能测试,其实这种让其他成员帮忙测试还有个好处,就是可以让其他人意识到测试工作不是单纯机械的点点,而是一项逻辑严谨,有技术含量的工作,这样其他成员在这个过程中也会逐渐对测试岗人员重视起来;

  3)跟领导说只有一名测试时,最好抛弃自动化测试,我发现有些领导对于自动化测试有迷之倾向,可能在他们听闻中,自动化可以减少人力付出,提高测试效率。但是他们不知道自动化的成本,所以当项目组只有你一名测试时,一定要向领导说明自动化需要具备的条件,告诉他一个人开发和维护自动化脚本不但不能节省人力,反而会浪费时间和精力。

  4)跟领导说只有一名测试时,有些任务需要划清界线,这点说起来可能会招领导或者团队其他成员厌,可能会觉得你在推脱责任,但是这种情况下必须和领导说明,测试的人力有限,为了保证测试质量和效率,开发的自测一定要他们自己完成,如果发现很多基础功能存在问题,是可以考虑打回重做的,而且测试只对每个提测的版本负责。因为我发现很多小公司都喜欢把开发环境就当成测试环境,然后开发测试共用一个,一旦测试发现问题,开发一改完就让测试再测一遍,这种无版本区分,频繁测试只会让系统质量难以把控,还会增加测试的很多任务量,所以在这里首先就需要申请测试环境,提测的版本必须放到测试环境上。

  5)跟领导说只有一名测试时,如果任务量过多,尝试了各种办法还是难以应付测试工作,那么最好再招测试人员进来,哪怕是实习生进来帮分担也行。

  会哭的孩子有奶吃,你提出来这些难处,一是可能对自己有切实的好处,二是领导也会觉得你是一个很有想法,会解决问题的人。

  2.制定工作流程

  像这种一个测试的公司或部门,最让人头疼的是测试工作的流程,所以制定完善且合理的流程,不仅解决了测试效率低下的问题,也能划分测试和其它岗的职责,这样追责时就有大用了,而且也能适当给自己减负,让自己更专注于测试工作。

  1)首先要确定测试计划、方案、报告等测试文档的模版,缺陷管理系统如禅道提Bug和跟踪处理的流程;

  2)其次是制定和团队其他成员之间的合作流程,如需求文档PRD、架构图、流程图必须要给到测试,作为测试的依据;

  3)对于更改的需求必须记录到禅道等缺陷管理系统中,同时最好发邮件知会测试;

  4)严禁在项目快发布时变更需求,除非真的情况特殊;

  5)项目上线或者发布,必须是测试人员完成了所有测试,确保所提的“致命”和“严重”等级的bug都已修复;

  6)如果开发人员不认可测试所提的bug甚至是认为不是Bug时,必须在缺陷管理工具中说明详细的理由;

  7)制定流程的最后一点也是最重要的一点便是让项目负责人开展讨论会,以确保全员同意并记录在系统,后面如果有人违反该流程将对带来的问题和风险全权负责。

  3.提升自身技术

  在大公司测试容易成为一颗专职的螺丝钉,做的事很细,但是在小公司,你必须十八般武艺样样精通,你除了需要掌握测试领域的各种知识。前面谈到过,凡事都是利弊共存,而小公司给到测试人员的好处就是自由的发挥空间,同时伴随着公司的成长,我们也能遇到各种机遇。而机会都是有给有准备的人的,在机遇到来之前我们需要沉淀。

  1.首先应该完善自己的测试理论知识,万丈高楼平地起,测试理论知识是这大厦的基石;

  2.在测试过程中逢山开路遇水搭桥,积极的去解决所遇到的问题,并把所学到的知识和技术运用到实际的测试工作中,形成学习-实践的闭环,对于测试员的成长是大有裨益的。

  总结

  如果公司只有你一个测试工程师时,也请不要慌,兵来将挡水来土掩总会有办法的。凡事都是利弊共存的,抓住一个人的“自由”,充分利用现有资源、管理好时间,保持和团队其他成员的密切沟通与合作。      你只要告诉自己,很多公司的测试岗都是从无到有的,现在有你一个人以后可能招更多的测试进来,同时你作为元老级,对于以后的晋升都是优势,你要做的就是坚持一下,并耐心等待这漫漫长征过去,你就能见到胜利的曙光。当然,如果你对该公司的判断是负面的,也认为公司不会越来越好或者扩大测试团队,那么你也可以三十六计走为上,选择一个更大更好的平台,去实现自身的价值!这就看你对公司或部门未来的判断和信心了。


作者:有房车的直男    

来源:http://www.51testing.com/html/34/n-7799734.html

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 这是时常被问到的问题,尤其是UI自动化的运行,过程非常耗时,所以,所以多线程不失为一种首先想到的解决方案。多线程是针对的测试用例,所以和selenium没有直接关系,我们要关心的是单元测试框架。unittest首先,应该说明的是unittest本身是不支持多线程的。当然,如果你学过Python的threading模块,也未必不行。不过我在stackoverflow 找了半天,大多是介绍unittest 测试多线程模块,并非是unittest本身如何多线程运行用例。“我如何学习葵花宝典” 和 “我如何验证 张三 学会了葵花宝典”是两回事,而我显然要解决的问题是前者。又重新百度,结果就找了答案。核...
            0 0 1872
            分享
          • 一、什么是接口测试      接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。二、接口测试原理      通过测试程序模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做出处理然后再把应答报文发送给客户端,客户端接收应答报文这一过程(request(请求)→response(响应))三、接口测试步骤      实现接口测试的两种办...
            13 12 2670
            分享
          •   近年来,随着各行各业客活量的不断发展,软件运行故障多表现为性能问题。因此,软件性能越来越受到测试人员关注,而性能测试是发现和识别系统瓶颈的重要环节。  但在实际性能测试过程中,测试人员经常遇到交易并发分散、无法确定交易数量的问题。本文主要针对上述问题,介绍测试策略制定方法,以满足不同交易类型的指标测算。  确定性能测试指标  在性能测试执行前需要对性能需求进行分析,明确测试指标。通常从以下几个维度进行分析:  各性能指标如下,在性能测试过程中,如发现测试结果有下述任一指标不满足目标时,需分析查找原因,确定问题并分析调优。  系统处理能力满足交易量预估。对可以确定交易量的交易,此项为衡量性能...
            12 12 1735
            分享
          •   新手学软件测试工程师学得好吗?如果你想转行到IT行业,软件测试是一门相对简单的学科,非常适合零基础的人学习。如果你决心学好软件测试并充满兴趣,那么学习不会太难。如果你是转行的人,买本软件测试书先学习基础知识,对基础知识有一定的理解很重要。  新手的软件测试课程实际上并不难学习,具有一定的学历,非计算机专业背景也可以学,软件测试不需要敲太多代码,只要操作测试工具进行测试就可以,细心耐心就可以胜任。软件测试入门简单,但深入困难,入门时只要理解中文,理解能力没有问题,就可以根据测试用例实施用例。  测试理论知识的学习测试定义、测试分类、测试方法、测试生命周期、测试计划、测试方案、测试策略、测试用...
            0 0 427
            分享
          • 导读:最初的秒杀系统的原型是淘宝详情上的定时上架功能,由于有些卖家为了吸引眼球,把价格压得很低。但这给的详情系统带来了很大压力,为了将这种突发流量隔离,才设计了秒杀系统,文章主要介绍大秒系统以及这种典型读数据的热点问题的解决思路和实践经验。一些数据大家还记得2013年的小米秒杀吗?三款小米手机各11万台开卖,走的都是大秒系统,3分钟后成为双十一第一家也是最快破亿的旗舰店。经过日志统计,前端系统双11峰值有效请求约60w以上的QPS,而后端cache的集群峰值近2000w/s、单机也近30w/s,但到真正的写时流量要小很多了,当时最高下单减库存tps是红米创造,达到1500/s。热点隔离秒杀系统...
            10 10 1590
            分享
      • 51testing软件测试圈微信