?🔥 交流讨论:欢迎加入我们一起学习!
🔥 资源分享:耗时200+小时精选的「软件测试」资料包
🔥?教程推荐:火遍全网的《软件测试》教程??
📢欢迎点赞 👍 收藏 ?留言 📝 如有错误敬请指正!
本人不才,今年35+,在行业摸爬滚打10余年,迷茫过、努力过,虽然不能说成为这个行业的翘楚,但是最起码在接近40岁的年龄,依然可以在行业中占据一份不错的岗位。回首过往,我最后悔的事情有两件:第一,入行太晚。我26岁才正式投身进入软件测试行业;第二,没有进行过专业的技能培训,都是一边工作一边学习,成长效率太低。所以说系统学习很重要,今天聊聊如何从0开始学习软件测试并拿到一份offer
为了方便大家学习,我将通过下面几个步骤来进行阐述:
一、什么是软件测试?
二、对于初级软件测试工程师,需要掌握哪些专业知识呢?
三、中级软件测试工程师专业技能储备(学会一点,拿下10k)
在学习软件测试之前,我们应该先弄明白什么是软件测试?
高赞回答是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
软件测试定义,什么是软件测试?
软件测试(英语:Software Testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。
?
软件测试属于IT行业,整个IT行业说是吃青春饭不为过。但是这个行业仅仅有学历和年龄的优势,是没有办法立足的,因为它需要非常强的专业知识。
各阶段技能需求,我们可以看下图,很好的总结作为软件测试工程师,在各个阶段需要具备的技能
对于还没有进入到软件测试这个行业的朋友,前期的准备工作可以从初、中级软件测试工程师的从业技能要求开始入手。
1、初级软件测试工程师专业技能储备
1)了解计算机以及软件测试相关的基础知识
a.计算机基础知识
计算机组成部分,操作系统分类,常见的系统架构(B/S和C/S),常用的DOS命令
b.软件测试基础理论知识
软件测试的目的、定义、原则,产品质量模型,软件测试的基本流程
2)常用的Linux命令
在软件测试中,有时候需要我们自己去搭建测试环境,或者是在服务器部署自动化项目。而服务器基本都是使用Linux系统的,所有我们需要掌握一些基础的Linux命令
3)SQL语句
在软件测试中,测试结果的校验或者自动化中的测试数据准备,都会操作数据库来完成。所以对于数据库的最基本的增、删、改、查的SQL语句,需要能够独立完成编写
4) 手工测试用例的编写(最重要)
作为一个软件测试工程师,最基本的要求就是用例编写的能力。如何编写出一份高覆盖率,低重复率的测试用例,是初入软件测试行业应该去不断追求的能力。
5 ) 缺陷的管理
了解在团队中,如何管理测试人员提出的BUG,从而保证项目的BUG能够及时被修复
此阶段视频推荐
会了以上这些内容,只能说是能够获得一份工作(5k~7k之间),但是现在行业招人的要求原来越高,搞定自动化或者性能测试,才能拿到10k以上的月薪,关于上方学习内容,我也整理了一份相对应的0基础入行的视频教程
非计算机专业:5天计算机基础+2天linux+4天mysql+1天环境搭建+3天手工测试理论+6天功能测试项目,合计21天;
完整配套学习资源:《新人如何入门和学习软件测试?》,只要学习完前面3个阶段即可。需要的朋友可以私聊我
计算机专业:只需要7小时快速学习测试理论,测试用例设计方法,缺陷管理方法,抓包工具,测试管理工具就可以拿下功能测试;《实战项目带小白入职7-12k功能测试岗位,仅7小时【史上最快】》需要的朋友可以私聊我
五年前,如果你只会手工测试没有问题。但是互联网的发展速度超乎你的想象。在现如今你想要在这个行业混得下去,不会自动化很难长期的立足。
而是否会完成自动化测试,这也是初级与中级软件测试工程师的分界线。
1、接口测试相关专业技能
论是自动化测试还是性能测试,甚至之后往测试开发方向发展,最基础的就是针对接口进行测试。所以要想做好中级软件测试工程师,第一步就是能够完成接口测试。
1)接口以及接口测试相关的理论基础知识
包括接口及接口测试的概念,接口测试的原理,接口测试的流程,http协议,Restful接口风格。这些内容都需要有所了解
2)接口工具的使用:Postman和Jmeter
接口测试,可以使用代码,也可以使用工具。通常情况下,接口测试最多还是使用工具来完成.原因无他,"高效"。
3)抓包工具:Fiddler和Charles
在测试过程中,我们为了定位前后端的问题,就会使用抓包工具,查看接口返回的结果。从而定位问题是前端的,还是后端的。这两个工具,我们一般二选一去学习就可以了,因为他们的作用都是一样的。
2 . 编程语言学习
自动化测试的实现方式,主要还是依赖代码来完成的。所以要能进行自动化测试,首先需要掌握一门编程语言。目前行业主流的自动化测试的编程语言为python和java。我个人推荐python,因为对于新人而言,上手的难度比较低一些。如果可以全天学习,python也就差不多10天就能入门
3、自动化测试学习
Python学完以后,我们就可以开始自动化测试方面的学习。
自动化测试的目的,主要还是为了降低回归测试的时间。
软件测试中的自动化测试,分为UI自动化和接口自动化。
1)接口自动化:
?2)UI自动化:
通过以上的学习之后,我们再来看你具备哪些能力?这个时候的你拿下10k的offer,如同喝水一般
1.SQL语句,Linux常用命令
2.手工测试用例的编写以及缺陷的管理
3.使用抓包工具进行前后端问题定位
4.使用Postman或Jmeter进行接口测试
5.使用Python进行接口/UI自动化测试
多么华丽的技能知识储备,保证你在行业内以高起点出发。
?
最后我邀请你进入我们的【软件测试学习交流群:785128166】, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路
作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:程序员二黑】自提!