0基础学习软件测试,需要具备哪些技能才能找到工作?

wuchangjian2021-11-16 15:11:05编程学习

前言

最近常刷到一些求职和想要转行的帖子,我也感触很深。

刚毕业的时候,时间过得真快,我也到了要找工作的时候了,刚刚经历了秋招的我,深刻的体会到了,没有一点专长是怎样的后果。

研究生期间选了一个和自己原来专业偏差较大的一个方向,导致我找工作的时候,并没有一个专业技能很突出的特长,就在当地找了家公司浑浑噩噩的干了一年,一年来钱没存多少,经验也没学到,感觉一整年“三点一线”式的上班没有任何意思,工资,经验两不沾,轻松是挺轻松,但是没有发展空间没有进步空间,

   舒适圈”太容易磨灭人的意志了,又煎熬了一个月之后开始考虑转行,在了解了多方信息后,最后选择了软件测试。因为大家都知道,IT行业的代名词就是工资高,这样在亲戚朋友面前也显得体面。而且软件测试是IT行业里面最容易上手的。

转行遇到的第一个难题就是怎么学,刚开始一头雾水,只能先从网上买些书来看,但是收效甚微。于是,我开始疯狂在网上找教程,求助度娘,但是大部分情况下都是七零八落的,得不到有效的答案。而且我也不具备梳理这些资料的能力,我一度开始怀疑自己,要不要选择放弃

庆幸的是转机来了,在网上找资源的时候,加了不少相关的技术群,认识了一些业内的朋友,通过请教和学习,对于软件测试这个岗位和技能有了更清晰的认识。也得了不少的帮助,让我更加有信心去做好这件事。

 

一百多天,从白天到晚上,不是在学就是在学的路上,从测试理论到实战操作,大大小小的问题,在群里前辈的帮助下,总是能很快解决。慢慢的,测试方法,用例设计,web测试,app测试,接口测试。虽然离技术大牛还差很远,但是找一份初级测试工程师的工作应该完全没有问题。

根据前辈们的建议,找工作之前,我刷了不少的面试题,算是有充足的准备了,最后在面试了5家公司后,拿到了一家电商公司的offer,一个月9000,对于当时的我来说已经非常成功了,也让我对未来充满期待。

今天看到了这个问题,就想来回答一下,感觉自己的过来人经历可以给你一个参考。

学校老师教的东西,说实话很容易和公司脱节,毕竟现在技术更迭那么快,互联网公司的业务变化也很快,除非你的老师同时也在外边上班,不然确实很难适应社会上的工作。

说回正题:【0基础学习软件测试,需要具备哪些技能才能找到工作?】

想要达到找工作的程度,你需要对测试理论、计算机基础知识有所了解,最好还应该掌握一门编程语言。

我们一个个来说:

第一、测试理论

首先,需要对测试岗位有一定的了解,测试岗位可以分为测试工程师、测试开发工程师、自动化测试工程师等等。你需要了解这些岗位的职位职责和职位要求,这些可以去boss直聘或者拉勾网去查看。

然后,还需要对常用的测试方法有所了解,了解什么是黑盒测试、白盒测试或灰盒测试,以及了解他们分别能解决什么问题

了解测试方法,对我们设计测试用例很有帮助。

比如:我们测试数值区间时,常常会用到边界值法,测试不同条件下的功能时,常常用到等价划分类;进行白盒测试时,还可以利用条件覆盖、路径覆盖等测试方法去设计测试用例。

平时可以抽空读一读《软件测试》这本书,了解基本的测试理论。》

在准备测试面试时,也可以去牛客网刷一刷测试的基础题,这样对测试面试也会有很大帮助。

第二、计算机的基础知识

首先,需要对操作系统有所了解。知道什么是内存、什么是CPU、什么是硬盘、什么是进程、什么是线程等基本知识。

另外,我们平常可能接触得比较多的是windows系统,但是现在大部分企业都会把服务部署到Liunx服务器上,我们也需要掌握Linux操作系统的基本使用,至少对常用的Linux命令有所掌握。

比方说,你需要知道查看日志,会用vim编辑文件,会用grep过滤文本,知道怎么杀死进程等等。

对于移动设备,也不能只局限于会用app,测试并不是点点点就行的,你要比常人更会玩手机。

比方说,你需要学会用手机连代理进行网络抓包Android常用的adb命令也需要掌握,iOS的证书相关的知识也需要掌握,知道怎么在手机上信任证书等等。

除此之外,数据库的知识也是重中之重,sql语句一定要掌握。

上面内容推荐大家可以看看《软件测试》、《图解HTTP》、《mysql必知必会》、《操作系统》、《鸟哥的Linux私房菜》、《移动App测试实战》这几本书。

当然,看书是很花费时间的,也可以在网上搜罗别人总结好的资料,关注我,我也会不定期更新一些资料供大家学习。

第三、掌握一门编程语言

现在对测试的要求是越来越高了,再也不是仅靠“点点点”就可以找工作的时代了。

除了具备测试能力之外,还需要掌握一定的代码能力。

很多企业现在都对测试开放了代码的审阅权限,假如你能看得懂开发的代码,你对整个开发的逻辑将有更深的理解,测试也会更全面。

现在的测试开发不仅仅要进行日常业务测试,有时候也要去开发测试平台、测试工具,假如不会代码的话,是无法完成开发工具的工作的。

当今测试的面试中,肯定也是少不了编程算法题的,这个需要你对编程语言要熟练掌握,要不然编程题面试肯定是过不了的。

建议初学者可以把java或者python作为入门的编程语言进行学习,最好是都学。

因为java目前是主流的后端编程语言,阿里、美团等大厂都在用。

另外java的编程思想、设计模式都比较成熟,要是学会java之后,再学别的编程语言会觉得比较容易。

python是最近几年特别火的编程语言,语法简单,快的话基本上花一周时间学习和练习,就能够入门。

并且,python在测试行业也是特别流行,很多测试团队开发测试工具,都喜欢用python开发。

一般把基础教程学完,熟知数据结构并能熟练操作数据结构。

另外,要对简单的算法要有所了解,比如八大排序等等。

第四、掌握基本测试工具的使用

最重要的肯定是要学会网络抓包,这个是测试工程师的必修课,抓包工具五花八门,一般抓http请求的,用得最多的是fiddler和charles,我推荐使用charles。

接口调试工具可以使用postman或jmeter。

app的测试工具,需要了解monkey的使用

自动化测试工具,可以学习selenium和appium

除了测试工具之外,再给大家介绍一下测试工作中常用的4款软件:

jenkins:只是持续集成工具,说得通俗一点就是,利用这个平台可以进行app打包、代码构建或脚本执行。

wiki:在线文档工具,可以作为企业的知识库

jira:可以用来做项目管理或bug管理

gitlab:代码仓库,也就是存放和管理代码的地方

这些工具至少要会使用。

以上测试工具我自己整理了一份,有需要可在评论或私信里告知我。

假如你都能掌握我提到的这些点,基本上就可以达到找工作的能力了。

但是能不能面试上是有很多因素决定的,不单单是只看你的能力,面试官还需要考察你之前的经历,看是否符合他们岗位的要求。

对于转行做测试的同学来说,一开始都会比较困难一点(我就是这么过来的),但是只要你能保持不断学习的状态,想要找到一份好工作也是有很大希望的。

希望大家都能找到心仪的测试工作!

感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是么很值钱的东西,如果你用得到的话可以直接拿走:

这些都在我的QQ技术交流群里(技术交流和资源共享,广告进来腿给你打断)

可以自助拿走,群号:563251944(备注“csdn”)群里的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦。

 

 
 

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。