小白成长建议(1)-测试工作

 

在第一章我觉得首先应该谈的就是当你准备进入测试工作的时候,你应该先问自己几个问题:

1.我了解测试工作么

2.我适合测试工作么

3.我能做好测试工作么

 

因为选择第一份工作是很重要的,当然如果它是你转行之作也是非常重要的,因为只有在一个相关行业有一定的沉淀和积累,那么才能让这个工作变得有成就感并且获得对应的物质回报。

 

没有任何工作是有趣的或者轻松的,因为在中国还不存在人口太少导致的劳动力缺乏问题,一个工作你不做下面还有十多个人等着做,所以不要相信什么工作比较轻松比较舒服,所谓的轻松与舒服是用空间与价值换取的。当你需要把一个东西做深做到别人无法替代的时候,那都是需要几万个小时的重复来累积的,哪怕是游戏都是非常无聊的工作

 

那么回过来当你知道任何工作哪怕测试工作都是非常枯燥、痛苦的,那么你该怎么选择工作或者行业呢?

 

基本上来说我觉得工作的选择无非来自于以下几点:

1.兴趣爱好(比如你喜欢某些东西,做相关职业)

2.相关专业(你有一定的基础)

3.机缘巧合(某人带你或者某些事情触发你)

 

而工作是否能够做好,是不是辛苦其实本质上是取决于你的心!什么概念呢,当你觉得每天面对成堆的文档或者被测系统,你会觉得心力憔悴而某人会精神亢奋。当你觉得新知识让你学习的无比痛苦的时候,某些人会觉得又能多学东西了。这点在我一个朋友身上非常明显,当年做功能测试的时候经常和我抱怨人就像要死了一样,每天都是加班都是看业务、看文档,而现在每天忙到12点都还乐得其中,觉得生活充实,阳光明媚。

 

本质上是屡战屡败还是屡败屡战,而计算机这种东西是一个死东西,不存在屡败屡战就不胜的,而且在你掌握了规律后,你会发现也就这点事情(这个估计你要做5年工作经验左右才会有这种类似的感觉)。

 

从工作选择来说IT是比较让人感觉累的东西,因为新技术多,新花样多,走在所有行业的前列,同样也是比较有成就感和安全感的工作,因为不会原地踏步,一招吃遍天下,工作2年就发现未来每天都做同样的事情(某些行业也许只需要几分钟,比如售票员)。如果你愿意比别人付出多一点,那么你渡过了我们常说的门槛,入门了那么你突然会发现选择这个行业是一个非常有趣和明智的决定。而如果你总在门口站着,这个行业会让你无比痛苦。

 

那么IT工作有很多,你选择测试是为什么呢?

基本上无非这几种观点:

1.我不会写代码

2.测试工作压力比较小

3.测试适合女孩子

4.测试比较好入门

 

其实这些说法只能说对错相伴,总的来说都是因为对测试工作的片面性导致的,那么在我眼里测试工作到底是什么需求呢?

1.好奇心,对不清楚的东西喜欢琢磨

2.耐心,为了得到某个结论愿意反复的尝试获得结果

3.沟通能力,测试是一个需要说服别人和理解别人的工作,需要很好的表达能力,人格魅力及沟通能力

4.学习能力,别人懂一点你需要多懂一点,因为你需要说服别人靠嘴是不行的,本质上还是靠数据和证据。

 

那么先对前面说到的几个可能比较片面的观点做个补充:

 

1.测试不需要写代码

其实测试工作并不是不用写代码,只是在大多数初级测试工作中都是功能测试为主,也就是代替用户运行软件体验软件,在这种情况下确实不需要有开发能力,但是这看似简单其实很难。可以参考美食家,美食家就吃东西么,这东西你会我也会,有啥了不起的。现在对于测试人员的要求在开发上要求越来越高,而且如果你想很好的验证被测软件,会开发是基础,所以有些时候测试对开发能力的要求比开发工作还高。

 

2.测试工作压力比较小

测试工作和开发工作有些区别,因为开发工作需要有具体的产出,而测试工作的产出会略少点(不太好量化)。同样一件事情,开发的工作量比较容易明确出来,而且是被不太合理的量化出来(明明做好要2天,非要1天做出来,虽然可以做出来,但是不懂的人是看不出哪里不好的)。而测试工作更容易偷懒了,因为除了使用特定的测试管理工具,否则没有办法监督你测了还是没有测,用心和没用心更是看不出来了,除非测试后还存在问题,而遗留问题又是必然的,所以这个时候工作的主动权回到了自己手上,也就是说认真做测试压力会很大,而不认真做测试的压力会比较小。

 

在这点上我只能说出来混迟早要还的,你不认真自然有人替你认真。

 

3.测试适合女孩子

从大多数开发都是男性的角度来说,女孩子做测试可以获得沟通的优势,但是女孩子也有自己的不足,所以你会发现大多数业务测试都是女孩子,但是技术测试都是男的。女孩子的性格确实在基础重复性工作上会更有优势,这个只是职业划分,但是如果你觉得女孩子不提高点技术就能混下去,那么还是前面那句话,中国不缺人。

 

4.测试入门门槛低

这点在现在其实我都有点想否定了,为什么呢?因为开发的门槛其实也蛮低的,你只要重复写一个东西3个月,其实去应聘个工作还真够了,而测试工作要把道理说清楚能做,可能3个月还真不太够。但是对于招聘公司来说,大多数还没成熟到招聘一个优秀测试的概念和观点上,所以对于测试职位一般只需要你懂个概念,能做点执行工作就行了。从这个角度来说测试入门的门槛确实不高,但是如果你对未来的职业高度有向往,做好测试工作的要求非常高。

 

那么在说了这些内容后,不知道看完了的你有什么想法呢?

 


 

小白成长建议(2)-扎实基础

 

  测试基础  

 

不知道在看完上一章之后你是否还有勇气继续选择测试这个工作,或者对这个工作有了一定的了解。那么在进入正题前,抱歉我还是要再做个铺底。就是我们的第二章测试基础。

 

测试需要基础么?

 

需要,很需要,甚至我觉得都需要一点点天赋!就像不想做厨师的会计不是好司机一样,测试是一个非常需要跨行业跨领域跨传统思想的工作。想要做好测试,那么你必须啥都会一点,而且为了说服别人,你还得啥都比别人厉害点,这样别人才会服你。

 

比如你告诉别人乱穿马路是不对的,这是没用的,因为别人不一定明白道理。如果你让他作为司机感受一下开车的时候的一刹那走神,并且让他看看相关数据,他可能突然一下就会意识到,不能将自己的生命放在别人的不疏忽上。每当看到骑车带孩子上学被集卡或者搅拌车之类的大型车辆盲区带走的案例,都心痛不已,害己害人。

 

那么测试需要什么基础呢?这个和你的工作业务方向和自己的职业方向有一定的联系,所以我这里从入门者的角度,给出一点自己的看法吧。

 

  业务基础  

 

当你在工作中验证一个被测软件的时候,其实首当其冲的就是业务基础,也就是你对该软件的功能是否有足够的了解。例如你玩一个吃鸡类游戏,那么你一定要知道这个游戏怎么玩,规则是什么,你才能进行基本的测试,如果对于某些比较困难的用例,你还必须要有非常扎实的操作基础,因为什么技能组合冲突等都会需要相当特殊的环境验证。而如果你测试什么粉粉日记(朋友的公司做的,顺便做广告)之类的软件,那么你需要对女孩子的心思有所了解,才能理解为什么一个日记软件能做到千万用户。

 

测试工作对于测试人员的业务基础有时候比技术更重要,这也是你会发现很多公司的测试经理(女)大多数都是业务背景很厉害的原因之一。

 

既然这样所以你的专业背景在软件测试行业就不一定是计算机,但是后面也会说计算机相关专业总有一定的优势的,but这年代谁不会用电脑呢?如果你对财务很熟,那么你做财务软件会有一定的优势,如果你对海淘很熟悉,那么电商类的系统你会更容易上手,以此类推。

 

  技术基础  

 

技术基础可大可小,但是我还是按照稍微理想一点的情况来谈吧。对于软件测试来说,既然你测试的是软件,那么最好做到以下几点:

1.你会用这个软件(简单安装、使用独立进行)

2.你知道大概这个软件怎么开发出来的

3.你会开发这个软件(架构、数据库、开发、部署环境)

4.你能更好的开发这个软件

 

对于初学者来说一般是从1往2过渡,先从能用到明白原理。这些技术基础包括基本的OS操作(主要是linux系统)、开发语言、数据库操作(主要是mysql、Oracle),这些知识可以帮助你更好的理解被测对象是怎么回事,从而在后面的测试技术中为你的疑问及分析提供有力的支持。

 

除了上面的技术基础还有一部分是测试技术基础。这个方面就包括了测试理论、测试的相关体系流程、测试相关工具等,在这里就不详述了,在后面的章节中我会逐步细化。

 

  素质基础  

 

就如之前所说的,测试是一个相对比较烦琐的工作,如果你不是一个具有一定素质基础的人,那么我只有很遗憾的告诉你,你并不一定适合这个行业。身边这样的例子比比皆是,带着满腔热血踏入这个行业,带着满腹牢骚抱怨离开这个领域,最后难受的会是你自己。

 

那素质基础包含那几方面呢?通俗来讲,大致包括以下三个方面。

 

1.“三心”基础

 

古人云,细节决定成败。细心格外适用于测试人员。甚至于我们说,需要一些追求完美主义,吹毛求疵的精神。而耐心与责任心更是能否真正踏入这个行业的必备因素。

 

2.态度基础

 

工作态度是评价测试人员很重要的一个方面。例如,如果没有好的工作态度,即使一个技术能力再强的测试人员,在团队中有时候也不能对测试工作起到推动作用,还可能起到阻碍作用。而一个愿意工作的测试人员,哪怕他的技术水平不强,人并不聪明,但对工作认真负责,这样的测试人员也会对工作起到很大的促进作用。如果业务能力与技术水平都是后天能培养的,那态度基础就是先天因素,或者可以成为天赋。

 

3.学习基础

 

不断地学习新东西,不断总结在实际工作遇到的问题及解决方法,并把他们归纳整理形成经验教训。是提高自身能力水平最好的方法,也是能否在测试领域达到一定高度的关键所在。

 

  社交基础  

 

其实本来想写沟通基础的,但是觉得这个topic太简单了,还是用社交基础来代替吧。何为社交基础,人在社会中不是孤立的,而也不存在啥个人英雄主义,一个人改变世界(那是在小说电影中的桥段)。既然你在社会(江湖)中,那么你就必须学会融入社会和江湖,有效的和你的圈子形成群居。

 

常常说开发和测试是水火不容的(个人觉得夸张了点),就和双子与处女是互相吸引但又互相伤害一样,一个是聪明发散,一个是沉淀计划,总是说不到一起。但是作为测试人员,你的工作是提高软件质量(概念后面说),一切能够提高质量的工作都是你应该做的,哪怕让你身边的群居生物开心,这也是你的有效任务之一,所以你的社交能力决定了你周围的人对你的定位。

 

社交基础逃不了两个事情”颜值”和马屁,抱歉也许我这里说的非常直白,但是本质上我觉得也就是这两点。颜值的道理很简单,人总是看第一印象的,如果颜值高,别人一开始对你的定义就会好很多,但是不要总觉得这是长相的问题(怪爹妈),这是一个整体的概念,大了说是气质,小了说的穿着打扮行为举止,这些东西给别人带来的就是对你这个人的定义。

 

所谓的IT男大多数存在着颜值问题,不拘小节,穿着打扮统一标准,各种大神更是可以用邋遢来形容,夸张了一点,但是能做大神的人物往往都没有时间或者精力来注意这些事情(参考扫地僧)。而IT女大多也被同化了,女汉子居多(看部门),所以导致公司的女孩子可能会缺少点风情万种的感觉吧,当然想起了一个笑话,IT男问女”你们为啥上班穿那么多,不怕热么?“IT女回答“我们穿少了你们会热”。从这里我想说的是稍微有一点穿着打扮可以给你加分不少,但不要过。

 

另外一个方面是马屁了,其实马屁学可以说是一个让人讨厌又不得不说是一门好学问的东西,”千穿万穿马屁不穿”是一个大家熟悉的流行语。到底怎么理解这个问题呢,我觉得应该从人性来考虑,其实人都希望得到认可,这是人存在的很重要的成就感的来源,每个人都有自己的优点,当然缺点也很多(比如我的缺点就很多,不自黑了这里)。所谓的马屁学,其实也是一种赞许、鼓励别人的手段,需要从一个细微的地方找到别人的优点,来给与赞许。在中国这点上可能比较奇怪,对别人的鼓励赞扬在小时候少,而到了成年了又过多。个人的理解是小时候每一次进步鼓励都能积累信心迎接挑战,而成年了需要有足够的心智来抵抗压力自我突破。

 

作为IT人员往往会在这两个地方走上极端,要么过于对他人严厉要么对于他人过于阿谀奉承,这都是需要注意的。在工作中IT人员做事沟通都会计算机化:

 

a.单细胞思维

 

b.讲究单刀直入

 

这个给沟通带来了快捷方便之处,也带来了很多缺心眼、低情商的状态。人都是有感情的,不要把对方当作一个机器来看,当然工作对事不对人也是正常的,这是个度的问题。我相信越是厉害的人,越是需要把握住自己的马屁度。