“这个问题是写给想要做自动化测试的人,或许你以为软件测试的门槛很低,低到任何人都可以做,随便点点就可以了,这个行业太low了,所以你想做自动化测试,提升自己的逼格,我想说手工测试并不low,如果让一个什么都不懂,一点业务基础都没有的人去做测试,能测出来问题吗?不要忽略你的业务知识储备.” 以上文字,引自Young的原话,说的太对了,不仅是自动化测试的,手工测试的也是如此的。 测试人员能力素质: 随着这几年国内IT行业的快速发展,测试这一职位也越来越受到企业的重视,但是测试人才却存在巨大的缺口。为了尽快满足项目的需要,所以很多企业招聘时就会降低对测试人员的能力要求,进而导致这一职业被外界普遍认知都是:门槛低、水平低,就是随便点点;许多的待就业人员也会形成同样的认知,大量涌入这一岗位;进而影响下一波人…….如此恶性循环下去。 不乏有一批人觉得这个行业太low,觉得自动化够高大上,在没有打牢测试基础的情况下,开始学python、学语言,立下要做自动化测试的方向…...但是殊不知测试基础都没有做好,写出来的脚本根本不能解决问题。 这以上就是测试行业的现状和自动化测试人员参差不齐的原因。 借着这个机会,想说明一下:一位优秀的测试人员应具备的能力和素质。 从下到上,依次分别是:基础素质、测试能力、代码能力、平台架构能力和核心驱动力。正如金字塔形状,下层是上层的基础,如:基础素质是测试能力的基础、测试能力是代码能力的基础、代码能力是平台架构能力的基础….. 基础素质:一个人做任何事都离不开基础素质要求,它是根基和基础。 1)细心:做事情细致认真,它体现在方方面面,例如:简历格式是否都对齐、有没有错别字、测试发现中一个小的UI错误都不会放过。 2)耐心:做测试也好,做自动化测试也好,都会遇到许多重复的、枯燥难以解决的问题,这时候最需要耐心、沉着应对工作中的各种问题,不浮躁。 3)责任心:就是要自己负责的事情做到最好,举个极端的例子:哪怕是第二天就要离职了,也要在离职前把自己负责的工作都做好。 以上三点,是做所有事情都需要的素质,在测试这一行业尤其重要。 4)学习能力 正如Young在其文章中所说的:"软件行业从桌面软件到web端,又从web端迁移到移动端,谁也不知道下一个是什么。而我们作为软件行业的从业者,不能因为那些很火的东西不火了而让自己没落,一个人最为核心的能力就是学习能力,如果你善于学习,你就不必担心这些变迁,因为你可以毫无压力的迁移,selenium的原理你掌握了,学习appium简直小菜一碟…" 5)问题分析能力和问题解决能力:手工测试或自动化测试过程中,一定会遇到各种各样的问题。这些问题需要大家发挥各自的聪明大脑,分析原因、找解决方案、不断去尝试...你把这些问题独立解决了,你的能力就提升了,东西也学到手了。在QQ群里,经常看到有许多的同学,想都没想、查都没查,就把问题抛到QQ群里找人解决,这样的话你是得不到锻炼的。 6)总结能力:学过的东西或解决过的问题,要善于经常性地把它总结和记录下来,否则时间久了就忘了。 以上是对测试人员的基础素质要求,一般情况下从业不久的同学,在以上的素质要求上都或多或少有欠缺,这需要在未来的工作中持续不断地进行改进提高,贯穿整个职业生涯。 测试能力:牢固的测试能力是未来做自动化的基础。 简单来说,如果没有很好的测试能力,那么就…. 无法很好地发现测试过程中的效率问题, 无法很好地设计有效的用例和自动化用例, 无法很好地知道在整个项目流程中什么时候引入自动化, 无法很好地发现BUG, 最终的结果就是没有价值!没有价值的东西是不会被认可的。 代码能力:高质量的自动化测试脚本所必备的能力。 这里一般都会有一个误区:很多同学以为掌握了一门语言就是代码能力OK了,其实不然,自动化测试脚本也是需要有代码健壮性、代码扩展性、代码稳定性要求的,而良好的代码功底、数据结构和算法,可以开发出高质量的自动化脚本,这会极大地减少后期自动化脚本的维护成本。 平台架构能力: 随着自动化脚本所解决的问题逐步增多,范围逐步扩大,对自动化脚本的架构设计也会提出更好的要求。举例来说:在手机输入法项目,一开始你可能只需要用python+uiautomator(一款自动化框架)写一个脚本满足打字的自动化需求即可;慢慢地,项目要求不再局限于只是打字了,需要你把换肤自动化、发表情自动化、安装卸载自动化…..;再后来,自动化需求会变为这些自动化的操作要进行随机混合在一起….. 这时候就需要有平台架构能力,去搭建一个扩展性强、稳定性高的自动化测试框架了。 创新意识:这是核心驱动力,软件测试的理念和创新,欢迎参考:http://www.docin.com/p-332393936.html 测试人员成长之路: 按照本人的工作经历,对于有意愿成为测试专家的同学,分享下测试之路。 第一步:打好扎实的测试功底。时间跨度:2年~3年。在这一阶段,将自己的测试功底打牢,一方面锻炼和积累自己的测试能力,另外一方面持续地学习脚本语言,为后续的工作打下基础,同时持续不断地提升个人的基础素质。这打基础的期间,需要学习用例设计的方法,参考:http://www.cnblogs.com/Jackc/archive/2009/02/24/1397433.html 第二步:将所学语言用于实践并锻炼。时间跨度:1年~2年。当第一阶段的测试功底打牢之后,后续的项目中如果有机会,就可以逐步地去自动化技术解决一些重复的、性价比高的自动化问题,在实践的过程中再巩固学习。 第三步:主动挖掘和解决工作中的效率和质量难题,并不断地解决更难的问题,积累更多的经验。时间跨度:2年~3年。 第四步:深入钻研相关领域的知识和技术,将自动化技术应用于在更大范围和更多的项目,形成自己独特的成果。时间跨度:3年~5年。 文章转载搜狗测试:【自动化经验谈】自动化测试成长之路 来源:https://www.cnblogs.com/youmi113/p/5967367.html 标签 自动化测试框架