关于测试开发及其他——写在离职之前

前面

在入职一周年的时候,写过一些东西,有过一些思考。

而在一个月前,花了六天,投了下简历,花了五天,思考,抉择。

虽然要投身入另一个地方,不再搞测试开发,但是,工作十六个月迄今,还是有一些感受的。

所以,想针对这个,说说一些个人看法,仅供参考。

(SDET,测试开发,但是貌似实际工作和字面理解还是有些差距的,工作时,角色更像QA+Tester,实际工作中,被称为QA……其实我还是喜欢SDET多些)


作为测试这一年多(准确来说16个月):

有为了赶进度,和开发一起加班到凌晨两点的时候

有深夜上线,一大早又起来冒烟的时候(冬天很痛苦)

有要开发帮忙搭环境,拉数据,查问题的时候

有经历各种问题,挖出一个潜伏很深的bug的时候

有误提bug导致开发查老半天的时候(面壁面壁)

有搭环境搭到抓狂的时候

有为了提高效率(不加班),狂写工具的时候

也会偶尔测漏,郁闷的时候

当然,也会吐吐槽,某个项目或某些流程很让人蛋疼

一年多,经历了很多事情,接触了很多开发,接触了很多测试,无论是开发和测试,都很nice,合作也很愉快,一年多下来,自认做到了“靠谱”二字,侥幸,一年多经手测试没出过测漏故障。


关于开发:

开发,我划分了三类

一种,完美型,这类开发,对自己要求十分严格,思维严谨,逻辑清晰,严格遵守流程规范,严格自测(或许还懂得测试理论的)。对于这种开发,作为测试对其是十分佩服的,他们的提测近乎完美,文档清晰,从头到尾测试起来效率非常高,提测近于形式。当然,这类开发还是十分少的,大部分是经验丰富而且严格要求自己的开发。

另一种,次完美型,这类开发,刚刚工作或工作有一段时间,离完美型还有一定距离,(经验问题而非能力问题),在向完美型努力,代码会有bug,规范有不遵守,文档有缺失,等等,但是非常配合测试,测试提的bug等及时修复,文档规范等及时改正,犯过一次的错误后续不会再出现,逐步地完善。合作起来还是非常愉快地,良性循环,逐步提高的过程,随着合作深入,效率不断提高。接触的大部分开发属于此类。

还一种,新手型,这类开发,大多是新人,对环境流程等等还不熟悉,处于初生牛犊不怕虎的。又分为两种,一种认为不需要测试,另一种认为走走测试流程也还好。无论哪种,第一次提测比较头痛,如果对应开发部门没有新人规范或者没师兄指导的话,提测是属于头痛型甚至灾难型的,一次提测bug频出,频繁触犯规范,狂打包…….一般头痛一次即可,每一个开发都是需要培养的,逐渐就会遵守规范了。

很幸运,碰到的开发都很nice,非常配合。


关于测试:

测试有依赖型和独立型,依赖型过度地依赖开发(只用不学,用过即忘,对开发各种依赖-环境搭建,调试定位等等),独立型相对独立(接触-请教-学习-实践,自我驱动,独立能搞定大部分东西)。后者我认为才是合格的测试人员,

这年头,测试不再是所谓的点点鼠标能搞定的

我们要:

  1. 对业务熟悉,项目的业务,涉及逻辑,上下游等等
  2. 对代码熟悉,参与code review,读懂各类代码,java/c++/perl/python/shell….同时要懂debug,往往要定位到错误原因
  3. 要会写代码,测试需要各种工具,自动化等等,都需要实现
  4. 对流程规范熟悉,从项目初始介入,到最终上线完成,要制定测试计划,协助和跟进各个环节风险和进度(测试环节在最后,前面环节的失误会影响测试进程及项目主体进度,而且这时候PM往往会压缩测试时间),各种沟通
  5. 会搭环境,sap.apach,nginx,hadoop…..要面对各种千奇百怪的错误异常。
  6. 要会测试理论,进行各种测试(功能性能稳定性黑盒白盒…….),造各种case,模拟各种场景
  7. 要会写文档,会提bug,描述清楚问题….总之,文笔要好,不要求会吟一首好诗,但要会以最简洁的文字描述清楚问题
  8. 要会分配时间,多线程运作……往往开发测试比开始很高的,有时候同时要处理好多事情…..

……………..

当然,这些都是需要时间的。

以及

测试,需要有足够的细心和耐心,只有忍无可忍的时候,没有无需再忍的时候。(当然,事不过三,过三就是你自个问题了)

测试,要求什么都要达到一定程度(什么都要会,会到足够用,但也经常被人吐槽什么都会点,什么都不精),测试其实对广度要求来得高些,但其实很多前辈身怀绝技,卧虎藏龙之地。

测试,有时候想想挺郁闷的,因为我们的目标是没有测试。通过各种方式提高质量,终极目标没有测试一样质量有保证。即,我们的目的是消灭自己。(这个想象就…….)

测试,还有个很矛盾的问题,一个牛逼的项目,不出问题,好像没你测试什么事,出了问题,却又觉得辜负了这份信任,哎。(这个有些苦逼了)

测试,还有个问题,就是要全程参与关注流程,必须像一个老妈子一样,事无巨细,关注很多事情……

测试,有些被动的角色,却要时时掌握主动权,督促开发

测试,既要和开发保持良好关系,又要坚持自身的原则(不能放水)

记得在哪听过,代码问题,和测试有毛关系。其实作为测试,存在测试遗漏,无论是否是自身问题,测试都会数省吾身,反省,思考,改进,提高自身及改进流程,防止再次发生。(我不杀伯仁,伯仁却因我而死…….)

测试,其实有时候是相当累的,项目多的时候,满负荷运转,数量上去了,还得质量保证。但将一个个项目送上线,还是很有成就感的。

测试,更多的像是幕后全能型选手,操心一切,保证一切ok,一切ok,我们便ok。(你好,我好………….囧)

其实测试涉及的内容还很多,我只是作为最初级的测试人员,就所做所见写了下.


关于测试开发关系:

说说测试和开发的关系。

记得上次会上,提到测试和开发的关系,有恋爱关系,长辈晚辈关系,敌人关系等等,不同人有不同看法,不同条件也会得到不同结论。

开发和测试其实是需要磨合的,老开发新测试,开发需要多配合指导一些。新开发老测试,测试需要更花心思督促规范。新开发新测试,都需要多问前辈多思考。老开发老测试,一句你懂的足矣。

网上看到很多开发吐槽测试或者测试吐槽开发的,其实,这只是其中某一方做得不够好,导致磨合进入恶性循环而非良性循环。

要保证良性循环,开发在不断提高自身代码质量,测试在不断完善和优化流程规范,提高自身测试相关的素质,保证项目质量,二者配合之下,一个良性循环,开发和测试效率都会大大提高。

这需要做的,首先还是开发需要积极的态度配合测试,而测试,需要了解开发的习惯,了解对应的项目,读代码,熟悉流程,会环境搭建,熟悉逻辑,测试逻辑,很多都需要在开发的帮助下完成。但这并不是依赖关系,开发教你搭了一次环境,你就要学会搭环境,下次不再麻烦。

恶性循环往往始于轻视和不配合,开发认为测试不重要,测试吐槽开发不配合,但是测试流程还是要走的,往往结果是,双方效率直线下降,消耗了大量时间和精力。搞完之后,对对方的印象都再次恶化。

看到有吐槽测试不重要,不需要QA的。

当然,如果团队都是完美型的选手,再加上某些方法,当然可以。

但是现实很骨感的,大部分情况是次完美型选手居多,这类情况,QA还是有存在必要的。

合格的开发+合格的测试 + 良性循环 = 最佳组合

无论是开发或测试,都会走的更远。


关于规范:

很多开发可能吐槽很多规范(代码,打包,流程等等)的形式化or不重要or浪费时间。

但是,其实这些规范一开始也都是没有的,都是前人一次次踩坑踩出来的。

存在即合理,该遵守的规范还是不能忽视。但对于流程规范,也没有完全死板硬性要求一定要做什么,根据项目特点,确认某些规范是否适用,是否有改进之处。这并不矛盾,很多规范,有个适用性,很多规范,也是在一步步改进和优化,目的只有一个,提高质量。

开发和测试或许大目标不一样,但是我们目的只有一个,保证最终产品正常运行。


关于靠谱:

要做到“靠谱”二字,感觉还是有些难度的

有几类:相当不靠谱,不靠谱,一般靠谱,靠谱

大多数处于一般靠谱->靠谱之间,当然,有极少数属于相当不靠谱/不靠谱/靠谱。

其实,要达到靠谱,需要一个过程,这个过程有快有慢

大部分都是随经验和能力增长变得靠谱,当然,也有极少数顿悟型的,直接进入靠谱行列

测试和开发,同样要经历一个过程,逐步“靠谱”

是否,我说修复了,一定就是修复了,我说有bug,一定是有问题,我说,我回头check下,一定就check了。

最给力的,我说,没问题,一定就没问题。

可以自问下,我靠不靠谱?

开发最怕改需求(特别是刚写完代码就改),其实测试最怕提测后改需求(特别是测完的时候)……哎,来来回回尽折腾。

所以,一群靠谱的人,可以释放超乎想象的能量。

靠谱的最高境界,或许是把复杂的事情做简单,把简单的事情做好。


关于选择:

你为什么选择做测试?

记得面试的时候被问过这个问题,(那时候是,你为什么选择测试开发?),好吧,当时刚刚毕业的我,实习半年多(Java开发),那时对测试开发印象模糊,工作半年后才发现,测试比例多一些,和SDET其实还是有些差距的。

曾经有段迷茫的时候,也被主管问及到底想要做什么,那时候的回答是“做当下认为正确的事情”,很多事情,没想明白之前,做自己认为正确的事情。

其实,每个阶段有每个阶段的想法,受到那时经验/阅历/环境的限制,我们做出的决定或许并不是最好的。

但是,选择没有正不正确,只有后不后悔。

我当时的选择,我并不后悔,工作后这一年多,很充实,很快乐,这就足够了。

So,当面临选择时,问下自己,自己是否喜欢?SWOT,分析下

做出决定,便不后悔。

既然选择了远方,便只顾风雨兼程。


SDET,测试开发,我的第一份工作。三天后,我只能说,我曾经是。

哎,伤感

最后,在这里,感谢这一年多,一起奋战的同事,谢谢!!!

:)

wklken

2012-11-28 于杭州