【职场日常】分享我功能测试进阶自动化测试学习指南,卷起来了
你好呀,我是测试要用手~
随着测试行业的发展,「会代码」逐渐成为测试工程师的一个重要标签。各大招聘网站,测试工程师月薪10K以上基本都有一个必备技能:自动化。那么自动化测试到底难不难呢?又应该如何学习呢?下面我结合我自己的经历跟大家一起聊聊,希望对你有所帮助和启发。
上次我有聊到,测试人在技术上的发展,一般就是:功能测试→自动化测试→测试开发→产品测试专家/测试技术专家……
我觉得在当今技术高度内卷的环境下,不管最终选择技术路线还是管理路线,一定不要过早放弃技术。测试工作本身就是构建于实践之上的科学,没有绝对的技术和管理,二者是相辅相成的。
最简单的一个例子,你要想带出一个测试技术牛B的团队,如果你都不懂技术,那怎么知道团队哪些技术能力薄弱,哪些技术需要提升,怎么制定技术能力提升的策略和计划呢?
在我看来,没有深厚的业务和技术的积累,很难把管理工作做好,没有业务和技术的支撑也很难服众。
技术这么重要,那从功能测试进阶自动化测试又应该如何学习呢?
首先,要学习一门编程语言。编程语言是进阶自动化测试乃至测试开发的准入门槛。对于测试来说,绝大多数人会选择学习Java或者Python这两门语言。看很多培训机构的宣传也可以知道,基本上都是宣传Java/Python全栈自动化等等。
Java是一门静态类型语言,主要用在后端开发和移动端安卓开发等等。Python是一门动态类型语言,主要用在机器学习、AI、数据分析、爬虫等领域。在测试领域,无论是自动化测试还是测试平台开发,两门语言都有大量的类库和框架支持。
那么应该如何选择编程语言呢?
对于没有编程基础,现在准备从从功能测试进阶自动化测试,那么建议先学习Python,Python比Java对新人来说更加友好,简单易学,可读性高。在Python开发领域流传着这样一句话:“人生苦短,我用Python。”非常形象地体现了Python的特点。Python能用少量的代码构建出很多功能, 能带来一种快速的学习体验。
对于有编程基础或者学习完Python后,建议学习Java。看招聘信息就可以知道,无论是校招还是社招来说,Java的需求量都远多于Python。同时,目前后端开发大部分公司使用的都是Java,所以会Java就有一个很大的优势。可以保持跟开发步调一致,便于交流,减少沟通成本。甚至,有时间测试完成之后,你可以拿开发代码进行学习,进一步加深对业务的理解。
除此之外,可以跟着公司使用的编程语言进行学习。比如你们公司自动化使用的是Python,且组内大部分人技术栈都是Python,那么你也可以选择Python进行学习,这样便于边学边实战,学完立马可以应用到公司项目中去。通过增加实战经验学习编程语言,是提升最快的方式,而且遇到解决不了的问题,可以抱大腿。
但是,不建议没有编程基础的同学同时学习两门语言,这样会导致每门语言都是浅尝辄止,学习压力也会很大,反而不利于语言的深入学习。语言本身无优劣,只不过是为了达成目标的一种工具手段而已。编程思维和解决问题的思路方法都是相通的,当你熟练掌握其中一门语言时,也可以快速掌握另一门语言。最重要的是马上行动,坚持学习!
通过学习编程语言和实战练习,熟悉语言基础语法,学习编程思维,以计算机的方式去思考问题。
掌握编程语言之后,就可以开始主攻自动化测试了。自动化测试主要有三种Web、APP和接口自动化。
Web自动化和APP自动化都属于UI自动化,在前端页面改动时,自动化脚本需要同步进行大量修改,高成本低产出。相比较来说,接口自动化的性价比就相对比较高,现在很多公司都在做接口自动化,主要用于回归测试和监控环境问题。因此,更推荐大家先学习接口自动化。
那么,重点来了,如何自学自动化测试呢?
我们需要根据自身掌握的编程语言选择自动化框架进行学习,不论选择哪种框架,我们的学习主要包括两部分:一是学习理论知识;二是进行实战。
学习理论知识通常使用两种方式:各种视频资源和相关的书籍/博客。在家时,有相对完整的时间学习,可以看视频学习;上班空隙摸鱼时,可以看电子书和一些博客(CSDN、博客园、testerhome论坛)学习。
相关视频学习资源和学习方法,小编都为大家准备好了。
关于实战,框架学习一定要进行实战练习。在实战过程中,很多同学遇到的最大问题可能是接口从哪里来?如果你已经入职测试了,完全可以拿公司接口用来实战。当然,网上还有很多免费的第三方接口供大家调用,有些收费的,也不算贵,按照调用次数收费,大家如果实在找到接口进行练习可以考虑,之前用过「聚合数据」,大家有需要的可以了解一下。
总的来说,功能测试进阶自动化测试,首先需要学习一门编程语言,在掌握了基本编程思维后,开始自动化的学习,自动化学习推荐大家先学习接口自动化。
学习时,一定要注重理论和实践相结合,具备一定理论基础后一定要上手实践,通过实践中遇到的问题有针对性地学习。在工作中,一定要多思考,如何把自己学习的技能运用到工作中,学以致用帮助提升工作效率。
学习是一个持续、不断进阶的过程,大家一定要坚持。
另特意为各位同学准备了一份13G的超实用干货自学资源,涉及的内容非常全面,涵盖功能测试、Linux数据库、Python编程语言,接口测试、UI自动化测试、性能测试......包括软件学习路线图,50多天的上课视频、16个突击实战项目(满足你对测试经验的需求),80余个软件测试用软件,37份测试文档,70个软件测试相关问题,40篇测试经验级文章,上千份测试真题分享,还有2023软件测试面试宝典,还有软件测试求职的各类精选简历,希望对大家有所帮助…这些都在我的软件测试学习交流群里:902061117
今天的分享就到此结束了, 如果文章对你有帮助,记得点赞,收藏,加关注。会不定期分享一些干货哦......