目前测试工程师可大致分为三类,初级、中级和高级测试工程师。初级测试人员最多,市场已经达到瓶颈,业务比较熟悉,技术没提升,不断有新人加入冲剂市场,想换工作没优势。中级测试人员借助于一些常用工具,开源框架,来录制脚本,编写自动化测试用例,然后接到jenkins中实现持续化集成,缺点是依靠工具,工具更新换代会直接影响该类行业。高级人员需求大,人员相对小。因为有能力的人都去做开发了,普通的测试人员编码能力相对弱,留下了一个相对真空的地带,待遇相当不错,目前可往这个方向发展。
测试工程师的工作内容可分为自动化测试,性能测试和测试开发。
自动化测试包含WEB UI自动化测试,API或是服务的自动化测试和移动自动化测试。
WEB UI自动化测试主流的开源框架是Webdriver2.0,先前还是selenium 1.0,Htmlunit,经过社会上的实践,现在就只剩下Webdriver2.0。而且这个开源的框架支持主流的语言,如Python,Java,PHP等,借助于Selenium。
API或是服务的自动化测试:接口自动化测试主流技术是python的urllib2和requests模块,phpunit也可以用来做接口自动化测试,java在支持接口自动化测试方法有点儿弱,需要做一下二次封装。由于服务出于安全考虑,各大公司都会自己开发相应的服务框架,所以服务的自动化测试则是公司自己开发的框架比较多。如58赶集的SCF服务框架下开发的服务,则需要ATF框架来进行测试,所以就不能列举出服务的自动化测试技术了。
移动自动化测试:移动自动化测试指的是APP UI自动化测试,后端已经由上面的接口和服务自动化来保证了。而APP UI自动化测试主流的框架是Robotium和Appium,因为Robotium只支持java语言,并且只能对Android系统进行测试,所以没有Appium应用的广。Appium支持iOS和android系统,支持java和python语言,是主流的框架。
性能测试我不太了解,不过目前主流的工具是LoadRunner和Jmeter。利用这些儿工具来根据需求,录制脚本,进行压力测试。还有需要对Jmeter进行二次开发,以完成对自己业务的完美支持。以后对移动端的性能要求也比较高了,新出的App需要支持各种型号的机器。高端的机器需要支持,低端的机器也同样需要支持。以后移动端的性能,应该算是性能测试的新方向。
测试开发是介于测试和开发之间的工种,测试开发是针对测试的开发,也就是说测试人员是测试开发的产品,他们有任何工作中的需求。测试开发人员需要积极响应,通过开发相应的工具,平台来解决他们遇到的问题。当然测试开发要求也比较高,上述的开源框架都需要深入了解,java,python,shell,ruby等语言的使用已经不是问题,CSS,js,HTML等前端的东西也要熟练使用,接口,服务的开发也是常事。在此阶段各种技术应该就不是问题了,你需要的就是解决问题的能力。
网友评论