10K起步的软件测试岗到底需要学什么?零基础进阶自动化测试需要哪些技术...

 

📝 面试求职: 「面试试题小程序」 ,内容涵盖 测试基础、Linux操作系统、MySQL数据库、Web功能测试、接口测试、APPium移动端测试、Python知识、Selenium自动化测试相关、性能测试、性能测试、计算机网络知识、Jmeter、HR面试,命中率杠杠的。(大家刷起来…)

 

📝 职场经验干货:

 

 

 

 

 

 

 

 


 

软件测试的正确路线

1、软件测试基础: 对软件测试整理的测试流程有清晰的概念,了解软件测试到底是做什么的,软件测试的各种专业术语是什么意思,以及多种不同的软件测试类型区分,测试用例的作用、本质以及如何撰写,测试报告、缺陷管理、常见的软件测试工具(selenium|Postman|禅道的认识)等等;

学习侧重点: 掌握软件测试的基础知识是每个测试工程师必备的基础技能。相当于整个测试技术的基石,一定要注重等等。

 2、计算机基础: 主要掌握计算机的系统基础原理(内存信息、运作原理、Linux操作系统命令)、测试的基本理论知识、前端方面的基础知识(HTML+CSS+JavaScript)等。

学习侧重点: 计算机基础知识同样是IT岗位必备的基础技能。这块主要掌握等知识。

 3、Sql数据库: 掌握基本的sql语句的使用方法,以及常见的sql增删改查、聚合函数以及各类条件查询、子查询的命令。同时需要了解Sql数据库在诸如接口和性能测试中扮演的“角色”和意义。

学习侧重点: 学习数据库的目的是为了后续的接口测试、性能测试方面的技能打基础,主要掌握为主。

 

4、编程语言学习: 对于软件测试工程师而言,想要在软件测试领域做的不错,就需要。没有编程基础的我们建议选择Python,如果有一定编程语言基础的可以选择Java。但是Java入门周期和学习难度相对于Python要大一些,但是两者在市面上的应用领域其实差不多,Python在某些领域(人工智能、爬虫和数据分析)要更优于Java语言。所以小编的软件测试课程大纲,就是以Python语言为课标的。

学习侧重点: 的使用方法。Python对整个自动化测试的学习具有非比寻常的意义。可以说学好Python语言基础是整个自动化测试的一个开端。因为我们后续要学到的APP自动化、Web自动化、接口自动化等等,都要使用到Python和Python的第三方库。很多自动化测试平台的框架和脚本也是基于Python开发的。

 5、接口测试: 学习和掌握接口测试的概念和原理。掌握HTTP/HTTPS协议的原理,学习和掌握Dubbox的接口测试方法和协议接口能力,主要掌握Postman的操作以及使用技巧

学习侧重点: 掌握接口的概念、HTPP/HTTPS等TCP协议和接口的基本使用方法。掌握Postman的使用。

 6、Web自动化测试: WEB自动化测试指的是对WEB页面进行界面、数据、交互等等相关测试。通过selenium等测试环境实现等。需要学习等等知识点。

学习侧重点: 重点要掌握的使用。注意的搭建。学习的相关知识点。

 7、APP自动化测试: APP自动化测试,是当前软件测试行业中较为主流的测试技术。我们需要掌握APP测试工具APPium的使用,掌握常见的多系统(Android、IOS、鸿蒙)系统的测试APP方法,移动自动化测试环境的搭建

学习侧重点: 掌握APP测试环境搭建()、的使用方法和。

 8、性能测试: 性能测试属于高端测试工程师需要掌握的技术,对技术要求也有一定的门槛。学习性能测试需要掌握等常用的测试工具。学习系统化的测试思维和流程,掌握。

学习侧重点: 性能测试属于自动化测试领域中的高端技术。一般会性能测试的测试工程师在一线城市大概能拿到18-25K左右的薪资。主要掌握。

 9、集成测试: 主要学习和掌握持续集成Jenkins、Git的环境部署,以及对应的系统化分支的学习,掌握Docker容器的部署和应用

学习侧重点: 掌握。学习等知识点。 掌握

 

新手学习软件测试必看的几点建议
1、一定要打好前期基础
软件测试的学习,总体来讲大致分为三个阶段。

第一阶段主要掌握软件测试的基础知识,比如:软件测试概念、软件测试分类、测试流程、测试评审、测试用例和测试计划等等。这一块儿的基础概念知识,是后期学习自动化测试的基石。掌握好了软测基础,后面的学习将会顺利很多;

第二阶段主要掌握计算机基础一类的知识。比如:计算机概念、Linux系统的学习、MySql数据库的学习、HTTP/HTTPS(TCP/IP)协议、前端方面的知识(重点:web+selenium 自动化和 APP+APPium 一块儿需要用到)。这几个点虽然前期感觉和自动化没什么关系,但是到了后期运用到接口、性能、Web、APP自动化的时候都会涉及到这类计算机基础知识;

第三阶段就是各类型测试的实战教学。软件测试工程师能否拿高薪,就取决于你掌握了多少测试类型的技术。目前主流的接口自动化、APP自动化、WebUI自动化和性能测试,都是市面上较为抢手的高薪就业技术点。学习过程中,一定要注意融会贯通,以及多做实战项目,这样在就业上岗的时候,我们才能从容的应对工作。

2、至少学习一门编程语言
编程语言对于软件测试的重要性我就不多说了。想必了解一点自动化软件测试,或者大致看过我们的软件测试课程视频的同学都知道。我们在后期学习的接口自动化、APP自动化、Web自动化等等都是围绕着自动化来的。而自动化又是基于编程开发出来的自动化运行脚本和框架。我们使用自动化技术测试项目时,就必须要懂得如何写出可以调试界面的脚本。

当然前期可能不需要我们自己去写脚本,市面上有很多现成的自动化测试脚本和框架。但我们也必须知道怎么用,如果你不学编程语言,那么你的测试技术就定然有上线。当你掌握一门甚至多门编程语言,再来从事测试的话,你的优势将变得无限大。

编程语言这块儿,小编建议大家可以这样选择:Python > Java。 没有编程基础的都可以这样选择,优先学 Python,其次学 Java 。因为 Python入门相对简单一些,而且 Python在各大企业中的自动化测试中应用更加广泛,可以说几乎百分之90的企业选择的自动化测试语言都是 Python.

3、注意不同测试类型的学习侧重点 提高学习效率
接口自动化: 需要熟悉Python语言,然后在Python语言的基础上学习Python的联网库Requests,需要封装成测试脚本。这时候需要Pytest单元测试库或者使用Unittst+HtmltestRunner来控制脚本生成测试报告,如果有需要持续集成可以再学习Jenkins

web自动化: 同样需要掌握Python语言,然后学习Python控制浏览器的库Selenium,和浏览器相对于的Webdriver

APP自动化: 需要熟悉掌握Python语言,然后再Python语言的基础上,学习Python控制手机APP的库APPium,手机相关的知识比如Adb,Activity,需要封装成测试脚本

上面几点都是主流的测试方案,也是初级测试工程师必须掌握的几个重要学习知识点。还有更多的内容可以根据自身的就业方向和目标,进行纵深拓展。

4、不管实战还是学习中,一定要多动手
我们的很多学员中,有一些人存在着同样的问题。那就是学习的方式和效率不太高。后来我们在每周的测验中根据这些“问题学员”的问题,进行深度追踪后,发现他们都有个统一的特点:从不记笔记!

这让我非常震惊,学习怎么能不记笔记呢?学习怎么能不动手呢?学员的想法是感觉老师讲的他们都听懂了,而且他们还可以看回放!老师也有课后PPT和源码笔记分享给他们,为什么自己还要做笔记呢?

大家一定要记得,好记性不如烂笔头!学习吸收知识的最快方式就是亲自动手!不管是记笔记,还是说老师布置的作业。

千万不要把老师课后分享的源码拿过来放在自己的环境里一跑,欸,发现可以运行,完美!就不管了,这其中大脑所缺失的记忆过程,会让你在后续的学习里,迷糊点积累的越来越多!

5、不要过于依赖现有工具 多尝试自己写工具
软件测试行业比较特殊,市面上有非常多很不错的测试工具。很多初进入软件测试行业的新手,往往会习惯于依赖于现成的测试工具,个人感觉有这些工具应付工作就足够了。但这其实是一种非常危险的“惰性思维”。

软件测试行业中其实还有非常多优秀的开源工具,而很多大型互联网企业都比较倾向基于这类开源工具进行二次开发的自动化测试平台。测试工程师也一定要多尝试着去使用这类开源工具,一来可以拓展自己的思维和眼界,二来可以尽早熟悉自动化测试框架的底层逻辑和开发实战。这一点可以在将来面试的时候,为自己的简历打上一道非常不错的色彩。


最近很多朋友都在说今年的互联网行情不好,面试很难,所以我创建了一个交流群748833197,希望优秀的软件测试宝子们都可以聚集在一起,大家可以一起解决软件测试难题、面试难题、以及工作上的问题、以及利用这次机会提升自己的能力!!!

posted @ 2024-11-13 22:19  码上生花  阅读(15)  评论(0编辑  收藏  举报