测试工程师到底是干啥的?测试工程师转开发有多大希望?
我2011年本科毕业,在学校时因为没钱,只考了几十块钱的软考网络工程师(CCNA的价格是我当时2个多月生活费,NP就够快一年了,当时真的很穷。PS学校消费也真的很省,3个人出去搓一顿大鱼大肉才100不到)。后来找工作去了老家的中国电信做运维,虽说毫无技术压力,但是工资的压力让我做了4个月就跑到北京了。因为有关系进了一个私企做软件测试工程师(工资翻了5倍当时超高兴,带绩效800→纯工资4k)。在工作期间,多数内容都是公司软件的功能性能测试、linux下的一些环境搭建和配置,和网络环境搭建。像centos或debian这些大众发行版的基础服务(http ftp ssh dns squid啥的)和交换机路由器配置(华为思科居多)都是轻车熟路。工作了3年之后合同到期,出来闯了一下,发现很多公司都很不待见做测试的,工作比较闹心(之所以没继续留原公司也是因为空降来了个领导整个测试部门都很不爽大部分朋友都离职了,但多数都是回老家,我要是回老家就回到工资800的时代了)
但自从自己出来找工作之后,一直很不顺利,不知道为什么,去哪都被鄙视,去年半年进过3家公司,第一家通宵+周末加班,第二家下矿井(最后还是因为干活太快被开除了),第三家在仓库撕了好长时间胶条最后拖欠工资(没签合同),三家招的都是测试工程师但是没有一个干正经事的。
有点对测试这个行业开始看不清了,害怕再之后还能不能干这行
现在2015年,上半年完全是家里蹲状态(倒是把驾照学了)。偶尔会看js和一点web开发的资料,租了虚拟主机和vps搭了点服务玩。
但是不知道接下来还能找什么工作,4个月的网络运维工程师经验,3年的(确切的说是2.5年)测试工程师经验,以及半年的被坑经验,现在已经不知道接下来何去何从了。以前一起北漂的熟人,转前方(销售)和回老家(做生意)的居多,但我这两样都做不了。
想转做web前端,把w3school上的js都看完了,这周写了点代码,把从linux下采集的一些数据展示到web上,结果在微博上被另一个老开发者看到之后被喷了够呛(数据是json文件,默认异步模式没等读完呢页面先输出完了,于是切成同步模式结果被喷。我第一天写js我还觉得我自己有救……)。
废话了几百字,就是想在知乎上问问两个问题:
测试工程师到底是干啥的?
测试工程师转开发有多大希望?
顺带如果能问出来我还有没有救就好了,现在出门求职就是各种碰壁状态。
说真的,最初我的工作内容也是包括了兄弟说的12345条,版本规划提需求,版本需求提功能点,设计阶段给建议,编码阶段自己做过功能、写过代码、自动化环境自动化脚本,测试用例,测试阶段更是忙,这么做了2年多,本来是很高兴的。
但是到了2年之后情况就急转直下了,1234条都瞬间消失了,工作内容变成了纯写(改测试用例),每天的工作突然就变成“鼠标点点鼠标点点鼠标点点”,有时候发现了一个bug实在手痒钻到linux底层去看脚本和代码,前端(web)和linux下shell的还好说,都是看得到代码的;要是C或者JAVA的根本接触不到代码,每天就看着进程crash之后报mantis,工作真心枯燥乏味。
实在熬不下去了我就辞职了,之后又接触了3家公司,就有了前文说的更坑经历。
想起以前在公司还给测试新人做过讲座,我貌似也一条条123456写了很多测试是做什么的,只不过理想跟现实,差距太大。
其实我从去年8月份已经转至php开发并工作至今。
看到大家还有人在关注这个问题,所以就来补充一下。
我对测试这个职位仍然非常失望。
作者:石头哥
来源:知乎
首先,其实题主的问题还是很实诚的,我刚开始做测试的时候其实也是这个心态,想转开发,也学习了很多的语言,个人觉得这是职业危机感的表现,挺好的,也相信题主不管去做开发和测试都会去不断的学习和进步。
好吧,正文来了,先回答第一个问题:测试究竟是做什么的?以下是我不久前分享过的一篇文章,我直接拿过来回答第一个问题吧(还顺便解决了测试人员的发展问题)
—————————————————
测试可以做什么
谈到测试人员的发展,首先再回过头来看看整个项目期间测试人员做的事情或者说能够做的事情吧以及需要具备的对应的能力吧!
1、版本或者产品的规划阶段:
作为一个测试人员,这个时候可以从一个更高的角度对产品的规划提出自己的想法,来更好的帮助产品取得成功。
需要具备的能力或者知识:对于产品的商业理解以及整个行业和市场的理解都比较深入,实际上这个时候我们可以将自己看成是一个产品经理。
2、版本的需求阶段:
测试人员已经能够开始做需求阶段的缺陷预防,保证需求是能够满足用户的原始需求,并且整个需求都是非常清晰和合理的,版本后期没有需求不合理或者需求不清晰的问题。
需要具备的能力或者知识:对于客户的使用场景非常清楚,能够在客户角度上面思考问题;有自己的一套需求分析的方法,最好是模型或者checklist之类的;非常好的分析能力,能够通过需求文档分析到可能潜在的问题。
3、设计阶段:
测试人员开始做设计阶段的缺陷预防,能够对于研发的整个设计方案非常清楚,能够根据研发设计文档里面的业务逻辑图自己能够站在测试的角度来画出一份让测试人员更加容易理解的业务逻辑图,并且能够发现研发在设计方案上存在的一些问题,并且指导研发进行修改。
需要具备的能力或者知识:比较深入的业务背景知识;熟悉开发使用的语言;业务分析和转换的能力;
4、编码阶段:
测试人员开始编写单元测试、接口测试用例、测试工具或者自动化测试用例,并且开始思考后面如何去更好的测试(更高的效率,更好的保证质量),并且帮助研发提前做好编码阶段的缺陷预防,甚至做得测试驱动开发。
需要具备的能力或者技能:熟悉开发使用的编码语言、能够对开发的代码进行静态走读、熟悉开发使用的编码语言的单元或者接口测试方法和框架、具备测试工具开发的能力、具备自动化的能力,良好的代码分析能力和用例设计能力。
5、测试阶段:
测试人员开始制定测试策略和测试计划、执行测试用例、发现和定位bug、跟踪和回归bug,质量分析,有效的探索性测试等等,目的是花更短的时间来更好的保证质量。
具备的能力或者技能:制定策略和计划的能力、执行能力、分析和排查问题的能力,业务的理解能力,对代码的熟悉程度,模块的质量分析能力等等!
ok,总结下上面用到的一些能力和技能,以及每种能力对自己的帮助
1、产品的商业理解能力--产品经理(马云、马化腾、周鸿祎等都是这样的人)
2、需求的分析能力和市场的理解能力--也是向产品经理方向发展
3、业务背景知识--能够让自己在该领域走的更远
4、开发使用的编程语言--这个应该是自己深入到代码级别一个比较基础的东西,对于自己对代码进行测试是非常有帮助的
5、业务的分析能力---养成这样的习惯后会有一套自己的分析方法,对于自己在测试领域的发展的很有帮助的,现在测试界的一些公共测试技术里面就有包含这些
6、单元测试能力--这个让自己走向白盒测试工程师是很有帮助的,也是能够让自己跟开发走的更紧点
7、接口测试能力--应该是向单元测试的一个过渡,能够让自己更好的接触到业务逻辑
8、自动化开发能力和工具开发能力--这个就不用说了,现在已经有专门的自动化人员和工具开发人员了
9、用例设计和测试分析能力--测试人员一个很基本的能力,但是真正做好的其实比较少,如果用例设计的质量很高的人其他方面的能力肯定很不错,而且有了自己的一套方法后对于自己在测试领域的发展是很有帮助的,需要不断的总结和分析,将经验抽象为方法或者模型
10、执行能力--测试人员(应该是所有的工作)都需要具备的一个能力吧,如果做好的话其实对自己的帮助也是比较大的
11、发现bug的能力--这个时候对于测试人员的发散思维很重要(个人觉得是衡量真正的测试人员一个比较最重要因素,没有之一),有些测试人员就是能够沉迷于此
12、定位bug的能力--其实这应该是测试人员一个很基本的技能,但是我们都是交给研发去做了,如果将前期的工作做起来的话,我们是应该具备这样的能力的
13、分析和排查问题的能力--分析能力是测试人员一个非常重要的能力,一个好的测试人员总是能够根据目前的一些现象发现一些本质上面的东西,并且有自己的解决问题的方法
14、制定策略和计划的能力--这个发展方向应该是项目经理或者管理方向吧,但是对于测试人员也是很有帮助的,对于自己从一个整理上面理解问题很有帮助
当然,以上这些能力测试人员不用每一项都掌握的非常熟练,可以根据职业发展方向归纳为如下几项:
1、产品经理
2、白盒测试工程师(叫开发测试工程师其实更加合适)
3、自动化开发工程师
4、资深的测试工程师或者测试专家(可能需要包括以上超过10个技能并且能力都要达到一定级别)
5、项目经理
其他的几点就不说了,这里重点说下达到资深的测试工程师或者测试专家(其实就是测试界的大牛)级别需要的一些条件吧!这个也是笔者一直比较欣赏的一个职业,可是目前这方面的人确实比较少,很多人半路走上了管理岗位!
1、看下自己是否真的适合这样的职业(很享受去发现一些bug,特别是经过自己思考后发现的一些别人没有发现的bug),这个可以在刚进入测试行业就看出来
2、一个好的平台:从目前来看,很多公司是没有办法给一个测试人员提供学习以上能力的机会的,建议是能够尽量找到这样的一个平台(当然也需要不断的证明自己是一个人才)
3、在一线测试呆尽量长的时间,并且反复磨练自己上面的一些能力(没有最高只有更高),这就是所谓的十年磨一剑,这样需要很大的勇气,但是在这个浮躁的行业里面做到坚持实际上是很难的,很多人都是耐不住寂寞的。如果你做到了你就赢了
4、不断的积累的和总结(总结是自己获得经验一个非常宝贵的方法,也是让自己进步更快的一个方法)
5、开始将自己的一些方法抽象出来,形成一些比较通用的方法,并且不断的尝试运用到实践中,证明这个方法是ok的,形成一些理论
6、完善,实践,推广,再完善,再实践,再推广.....相信这个时候,你已经是数一数二的高手了,再加上自己的一些推销自己的方法,提升自己的品牌意识,剩下的就不用说了,当然,学习无止境.........
————————————————
第二个问题,关于测试转开发的问题,这个其实不是问题,只要你从来没有放弃过写代码。 作者:joy some
来源:知乎
首先说明下我也是做测试的,做了将近两年,现在从事开发工作。至于测试工程师干什么我想 @测试行业的奇葩 以及说的很清楚了,我就结合自己经历说下转开发的问题吧,当然我的经历适不适合题主还需要你自己去辨别下。
首先先说想测试转开发的人一般分为两种:
1、觉得测试技术的提升和对产品的理解深度出现瓶颈
2、测试行业做的很不如意,觉得开发很牛叉、还好找工作,所以想转行
对于后者,我只能说测试工作本身是一个很复杂要求很高的工作,我只能说这个不是测试这个行业的问题,而是个人问题,你转去做开发相信我不到一年你就又会想去做配置管理或销售。
-------------------------------------------------------------------------------------------------------------------------------------
我是13年毕业的学生,和许多毕业生一样,我很迷茫,因为专业知识学的很差劲,根本找不到对口工作,因为和计算机专业稍微搭点边,对软件工程多少了解,又爱好编程,所以被招去做了测试。
测试工作不到一年,我就完全爱上了这个工作,虽然天天加班也没有周末,但是那一年是我成长最快的一年,我和另一名同事为本不太注重测试的公司搭建起了一套自动化测试框架,完善了部分量化测试的方法与标准,对原有测试用例重新评审并完善编写,性能测试与分析也开始干起来,我和那个同事还一起建立了一个和测试工具有关的测试人垂直社区网站,虽然撰稿人当时只有我们两个,但是还是以每周10篇纯干活原创帖的进度办着我们的小站,而且去年和TesterHome在上海举办了一次测试技术沙龙,当时很多大公司也开始打电话挖我,觉得自己很牛叉,甚至想和同事合伙开一家第三方测试公司!(现在想想无知的我真可怕)所以当时理所当然的决定跳槽,并选定了某知名公司A作为目标。
开始很顺利,说实话笔试很难,分为开发部分、测试理论部分和一个实际系统的性能分析,不过顺利的进入到了二面,也就是公司测试部门的老大,上来直接就问我关于中间件的性能问题和用例覆盖度的问题,我当时就蒙了,答的稀里糊涂,当时他就给我一顿批,并告诉了我我的性能测试分析部分完全是没经过对结构与场景的详细分析拍脑子写出来的产物,并指出我在用例设计上的薄弱点,我当时恨不得找个地缝钻进去,但我真想好好的谢谢他,一下子将我打醒。
回去后我开始重新审视自己的框架与用例,发现糟糕的很,开始沉下心仔细扑到项目里并进行测试工程师软考的准备,这期间因为开发了很多实用的测试小工具,老大问我有没有兴趣转去做开发,我想了一段时间,觉得自己对产品模块的理解太差,性能分析上也出现了瓶颈,所以转去做了服务器后端开发,但是我想说,我现在依然是走在想成为顶尖测试工程师的路上,其实开发与测试本就联系极为紧密,在国外一般都是资深开发才做测试的,而反观国内的开发行业,大部分一样也是觉得这个行业赚钱,去参加个培训就来找工作了,水的要命,还有什么资格总说测试行业门槛低?其实哪个行业都一样,我真的见过有的开发连边界值这种问题多不做保护也不进行单元测试的,不过回想如果不是我这段测试经历,我也不会做个好开发吧。
所以题主测试转开发本身并不难,在我看来开发转测试才应该是正常的行业现象,不过这个行业现在确实不成熟、太浮躁了、顶尖测试工程师缺口太大,我觉得题主如果真想做开发,那就先沉淀下来,不要怕什么天天加班有没有周末,你现在还没有资本去选择。
编辑于 2015-06-05 11 条评论 感谢 分享 收藏 • 没有帮助 • 举报 • 作者保留权利
2
赞同反对,不会显示你的姓名
辛德瑞拉CiCi
精通CloudXNS业务、略懂DNS技术的网红产…
2 人赞同
从你的经验,感觉你懂得挺多的,我觉得还是信心缺乏吧。
没必要这山看着那山高,把自己的目标定好,测试需求量也是挺大的。
找不到正经测试岗位,只能说你没有把你懂的完全发挥出来,或者说你信心不足一开始姿态就较低,导致面试者直接气势上就把你压下去了。
如果是做测试的话,你需要了解你所掌握的技能在测试市场上的定位,找准自己的位置才好去找工作;
转开发的话,说真的,只能从0开始了,不要指望现在能拿到跟你周围做开发的那群人差不多的薪水。即时你懂很多开发理论,但是开发这种东西还是要经验的积累,比如遇到一个小问题有经验的人一定比你解决得快。
还是建议一步一个脚印做测试,但如果决意要做开发,也要做好相关的准备,就不要纠结那么多了。 测试工程师,产品质量的把关者,工作起点高,发展空间大。我国的软件测试职业还处于一个发展的阶段,所以测试工程师具有较大发展前景。
工作的大概内容更
1.编写测试计划、规划详细的测试方案、编写测试用例。
2. 根据测试计划搭建和维护测试环境;
3. 执行测试工作,提交测试报告。包括编写用于测试的自动测试脚本,完整地记录测试结果,编写完整的测试报告等相关的技术文档;
4.对测试中发现的问题进行详细分析和准确定位,与开发人员讨论缺陷解决方案。
5.提出对产品的进一步改进的建议,并评估改进方案是否合理;对测试结果进行总结与统计分析,对测试进行跟踪,并提出反馈意见。
6.为业务部门提供相应技术支持,确保软件质量指标。
作者:Bugtags
来源:知乎
初看标题,我以为是应届毕业生的提问。仔细看了一下内容才发现是个有2.5年测试经验的人提问。
做测试2.5年还不知道测试是干什么的,的确值得思考一下未来的路该怎么走了。
测试是干嘛的?答案太多了,度娘一搜一片一片的。测试的地位如何?不同的企业文化导致测试的地位有高有低,当然,任何一个职能部门的地位都应该是靠自身过硬的功夫争取回来的。
说说测试转研发的难度。部分牛叉的测试大拿是研发转过来的,你说反转会不会太难?你认为的难,可能是基本功不行,各方面的综合能力不够强,代码能力也是弱的可怕才会把这事儿变得很难!
最后说说出路。11年毕业,年纪应该在24--27之间,这个年纪的人应该已经明确自己想干嘛了,你却跑来问出路,先问问自己到底想干什么,然后就去努力试一把,大不了失败,也不会比现在的情况差到哪儿去。最后温馨提示:想转行,无论是开发还是销售亦或者其他,都需要有重新开始的勇气跟决心,还要有不怕失败的厚脸皮。祝好运!
测试里面转行似乎是永恒的主题,分析其原因主要是其实测试是一个很好入门,但是很快遇到瓶颈的岗位,而这个瓶颈几乎很少人能够突破。原因很简单,比拼手工测试,可能永远是年轻人更有优势,尤其现在互联网时代。软件测试仅仅依赖手工,那真的竞争很残酷,因为你的经验再换了被测试系统后会失去大半,而你的年龄增长也让你发现缺陷的敏锐能力会有所下降。主要原因还是测试本身太依赖于人工判断,而不是一种类似于编程一样的技术,所以测试的困局在于能否出现精准的、技术化的测试分析系统。这也是星云测试平台一直致力于努力的方向,相信有一天这个行业的人能够理解测试分析系统对于整个测试行业的意义。
作者:michael
来源:知乎
我猜,题主想问的问题,其实是他为什么找不到工作?
在热情的讨论,测试生涯之前,我想先知道,题主是在人事阶段被枪毙的,还是在上级领导阶段被枪毙的?
如果是上级领导阶段被枪毙,那么可能是技术能力、或者沟通能力,不符合。
如果是人事阶段就被枪毙了,那么可能是衣着谈吐方面的问题。
是的,曾经因为我旁边的新同事,体现了脏乱差的风格,所以我辞职了。
公司人事有没有因此后悔我就不知道了。
看了很多启发 又想到一个老话:路漫漫其修远兮,吾将上下而求索
页:
[1]