时间真的过得很快,眨眼就从校园刚出来的帅气小伙变成了油腻大叔,给各位刚入道的测试朋友一点小建议,希望你们直通罗马吧!
如何选择自己合适的方向
关于选择测试管理:
第一,你一定不会是一个喜欢技术,或者说对技术敏感的人。第二,你一定是一个善于沟通且组织协调能力高的人。第三,你的抗压能力很强,上可以顶住领导的批评下能顶住下属的埋怨,受的了委屈,吃的了亏。第四,你对管理的工作充满激情,总之,相对于你的IQ,你的EQ更高,那么从性格上来说你是比较适合做测试管理的。
关于选择性能测试专家:
刚好和测试管理人员具备的性格相反,首先,你不喜欢组织协调这样的工作。其次,你一定不是一个技术狂热者,但又不排斥技术,你的动手能力比较强,喜欢实践,能静下心去学习,那么你有成为技术专家的潜质。
关于选择自动化测试专家:
和性能测试专家类似,如果你掌握了一门编程语言,或者说能学好一门编程语言,那么你有成为自动化测试专家的潜质。通常而言,自动化测试专家和性能测试专家在技术上是相同的。
如何实现的问题
关于如何成长为测试管理人才:
第一,你首先要成为你个功能测试专家;通过参与至少2个完整项目的测试工作,对测试理论、一个完整项目的测试流程、测试活动、测试输出了如指掌。第二,尽量选择一个行业深入做下去,成为该领域的业务专家,因为测试经理往往也是半个需求人员的角色。第三,在头3年,尽量亲自参与功能测试、性能测试、自动化测试工作,为后面测试管理的招聘工作、测试计划、人员分配、任务安排打下一个良好的技术基础,说白了,测试管理也是一个技术管理岗位,没有一定的技术功底,很难开展后续的管理工作。
关于如何成长为性能测试专家:
刚进入测试管理岗位,你负责的工作一定是功能测试任务。没有机会接触性能测试工作。怎么办?我的建议是:自学主动的去学习起来。
性能测试的学习过程大致如下:
1)首先了解一个系统的架构,明白各服务器之间是如何交互工作、系统的数据流向、系统的压力点,从而确定性能测试需求和指标,即那些功能需要考虑压力,能承担的压力是多大。比如一个购物网站,最典型的登陆功能、提交订单功能需要支持多少个用户并发,每个并发用户在几秒之内完成操作,系统长时间在压力状态下的稳定性。
2)第二选择测试工具,对于基于Http协议的应用来说,一般loadrunner都能完成性能测试工作,学习loadrunner的三部曲:脚本录制编写(loadrunner generator)、场景设置和执行(loadrunnercontroller)、结果分析(loadrunneranalysis)的内容。
对于一些无法用现有工具实施性能测试的应用,需要考虑自己编写工具来完成,所以一个优秀的性能测试工程师一定是能熟练使用一门编程语言的。
3)实践,一定要多实践,安装完loadrunner以后,loadrunner里带有现成的性能测试项目---飞机订票系统。完全可以拿来练手loadrunner。
4)性能测试的目的是发现系统处理能力的瓶颈而系统调优才是最终的目的,如果能进一步提高各业务服务器、数据库服务器的调优技能,对性能测试工作来说是如虎添翼。
关于如何成长为自动化测试专家:
自动化测试和性能测试不一样,性能测试主要是对服务器的性能做测试,而自动化测试是从前端考虑,其目的旨在于替代部分手工测试、考量客户端长时间运行的稳定性。自动化测试分为:web站点的自动化测试、PC客户端的自动化测试、手机端的自动化测试。每一个终端的测试都是一个大的领域,建议先深入学习一个终端的自动化测试技术。
关于Web端站点的自动化测试:常用的开源测试工具:selenium框架+一门编程语言(建议python),或者收费软件QTP,推荐selenium,因为它是开源的、免费的,不存在盗版问题、且可扩展,所以国内的一线大公司喜欢用。
Pc客户端自动化测试:常用的测试工具:QTP。付费软件,国内很多小公司在用。
Android手机自动化测试:常用的测试工具:monkey、monkeyrunner、robutium、appium等,这些都是开源软件。一样,国内一流的公司都在使用。
苹果端的自动化测试:常用的测试工具:Instrument、FoneMonke、Broomine、iphone SDK自带的test unit。
不管学习哪一个终端的自动化测试,熟练掌握一门编程语言是必要条件。
软实力
一个优秀的测试技术专家,我认为需要具备以下几个特性:
持续学习能力:计算机技术的发展可谓日新月异,如果不持续学习,那么不出2年,你就会发现你只能当一个廉价的手工测试人员。所以如果能在工作中学习最好,不能的话,下班后保证2个小时的自学时间,几年下来,你就能发现自己的进步有多大。
沟通能力:我觉得可以从两个方面培养:第一:日常工作的沟通能力:和开发、产品、运维、客服同事的沟通要及时,表达要准确,多微笑、多倾听、保持良好轻松的同事关系。第二,正式场合的沟通能力,如项目周会、评审会议、总结会议,一定要提前做准备,讲什么、怎么讲,自己私下里先练习一下,这样在正式场合才能表达清楚、气定神闲、落落大方,给领导和同事留下一个好的印象。
团队合作能力:首先从心态上,要强调整体的概念,放下单打独斗的想法。在实际项目中,体现为团队成员之间的相互协作、资源共享、共同进退。这个时代已经不是一个英雄创造神话的年代了,只有团队的齐心协力才能把项目做好,这样的人往往也是公司最喜欢,最愿意去培养的人。
与优秀的人为伍:所谓近朱者赤,近墨者黑。跟对一个老大、和优秀的人共事,找一个优秀的伴侣、经常去参加一些牛人讲座、技术论坛,通过这些人的耳濡目染,一定会让你少走很多弯路。
其他还有很多软实力,但我个人认为以上几点比较重要。
凡事要趁早,特别是技术行业,一定要在头几年打下扎实的技术功底,这对将来的技术管理或技术专家路线都有极大的帮助。
不知不觉写了这么多,感觉还没有说完,希望我的一些拙见能对刚毕业的同学和还在测试领域迷茫的同学一点帮助。
最后感谢每一个阅读我文章的人,一点小心意,虽然不是啥值钱的,需要的话直接拿走: