这个很要命的,我们谈到软件测试人员未来的发展方向大致有:自动化测试,性能测试,测试管理,项目经理。这其中自动化测试和性能测试包括项目管理,都会要求对软件开发有深入的理解,如何能设计一个好的自动化框架,好的性能测试用例,如何管理一个开发团队,这都需要我们在软件开发方面有所掌握。不单要掌握,而且要精通。此其一。
其二:如果不了解开发知识,测试人员很容易被开发人员牵着鼻子走,因为开发人员随便一忽悠,你如果不了解个中奥妙,你一个字也说不上来。(以前我们讨论 Cookie和Session,由于GoAhead不支持Session,只能用Cookie来控制,差点别开发人员忽悠了)
2) 软件测试很简单:
如果你这么想,那么请别去做测试,如果你做了,你也做不长久。以前面试一位小伙子,做了3年测试,问他测试都怎么做的?答不上来,原来他测的都是很简单的小软件,根本就没有系统地去学习过测试,无语。
3) 测试就是为了找到BUG:
很多人最初都是这样的看法,千万要小心。如果你只是为了找到BUG,那么BUG会成天缠着你。
4) 测试人员和开发人员从来都是死对头:
我以前发起过一个倡议:我们讨论的时候不要用他们(开发人员)和我们(测试人员),而是统一用咱们(开发人员和测试人员本来就是一起的)。如果测试人员能与开发人员成为朋友,你会发现,生活是多么美好。
5) 自动化测试太难:
有的人一进公司就想做自动化,觉得它有难度,有挑战。我说你如果做不好手工测试,你同样做不好自动化,手工测试才是基础。而另外还有一部分人一说到自动化便望而生畏,认为这个东西太难了,不想碰(特别是很多女生,就有这个心理)。其实大可不必这样想,自动化测试工具它只是一个工具而已,它跟WORD这样的工具没有任何区别。
6) 手工测试太没挑战:
什么都不说了,能把它做好的人没几个。
7) 大量的重复性的工作很乏味:
于是大家学得测试这份工作不好玩儿,特别一些男生,特别一些开发人员,从来都瞧不起做测试的,觉得这玩意儿太没劲。我想说的是,要掌握方法,要学会创新,任何东西都有它的特点,你如果总觉得成天在做重复性的工作,那么请静下心来想想,怎么能让它不重复(事情本身是死的,人是活的)。
8) 白盒测试是开发人员干的事:
一个合格的测试人员必须掌握白盒测试,理解其中的原理。不管什么样的测试,都必须要有测试人员的思维才能做好。
9) 女生适合做测试:
不管适合不适合吧,反正我以前所在的公司有5个Team Leader,3个Test Manager,其中只有两个是男生(加上我),这是现实。但是做自动化测试的,全是4个男生,这也是现实。不太想加以评论。只想说,女生未必适合做测试,男生同样能把测试做好,且做得更加专业。
10) 测试就是给开发擦屁股的:
如果这样想,那么请每天多准备些手纸。测试人员永远要站在客户的角度来想问题,很显然,客户是从来不会给谁擦屁股的,相反,是客户在驱动着软件的进展与成型。测试人员就应该扮演这样的角色,在大部分时候,要驱动开发人员完成软件的功能,驱动他们做改变。
11) 我做开发可能不行,做测试吧:
这个观点特别适应于应届毕业生,在以前面试的过程中,有一部分人就是觉得我代码写不好,所以入行做测试,还有一部分人稍微明白一点的,是觉得自己在开发方面没什么优势,主动给自己定位做测试工作。其实测试要掌握的技能远比开发多得多,至少面要广得多,要做一个好的测试人员,远比做一个开发人员难得多。
12) 功能性测试掩盖了可用性测试的必要
测试人员甚至我们的设计人员,开发人员都不太注重可用性(usability)方面的设计和测试。
我们往往只在意功能性或者性能方面的测试,而忽略了用户体验,即使谈不上用户体验,哪怕是方便使用也行,这些方面往往从软件需求,设计一开始就没怎么考虑。到后来,用户使用的时候便是边用边骂娘。(我常举的例子是:咱们买手机的时候,手机功能一切正常,但偏偏盖子上有条划痕,我相信大家都会要求重新换一台,就这意思)
有则改之,无则加勉,希望大家在进入软件测试这一行以前,能对测试有一个更深入的认识。