想学软件测试从哪里学(0基础入门软件测试)
很多人会不停的问自己是想学测试还是坚持做测试。测试的职业发展如何?如果你还在迷茫,找各种大牛问类似的问题,希望看完这篇文章,你能结束烦恼,给你更多的方向,当然也有更多的压力。
这个问题就跟申请大学专业一样。很多人问选什么专业,就业前景好,将来工资起点高。我不会争论这个想法有多糟糕。回到一句中国谚语:三百六十行,行行出状元。如果你现在在做测试,你的同事在做开发,你比较的话肯定会痛吧?选择考会不会有一种要死的感觉?你后悔过吗?后悔是没有用的。关键是如何弥补我们和别人的差距。在任何职业中,只要你足够努力和坚持,你就会成为大牛和专家。好吧,如果我想给你一个检测事业发展的前景和希望,你可以去任何一个招聘网站,去查一下阿里巴巴的检测专家工资。你看到别人的工资,我们很羡慕。当然你还需要看别人需要的技能,这是一个很大的压力。希望对基本功有个大概的了解。先说测试这个职业。
什么是测试工程师?
测试工程师的主要工作就是测试并找出程序的bug,尽量在程序发布前提前指出一些潜在的、严重的bug,以减少软件开发过程中修复bug的成本。测试是一个综合全面的职业。测试人员需要和很多人打交道,包括开发人员、产品经理、业务人员、运维人员等和这个人的软件生命周期相关的人。软件测试入门门槛低,几乎是一个月不到的简单培训。每个人都可以做测试,但不是每个人都能做好测试。我们经常私下调侃,好的测试人员会写代码,他的水平连普通开发人员都不如。好的测试人员可以去产品。他知道一些设计的常识,为什么会好很多。这就是为什么他需要有互联网思维,能够提出改进产品的建议。好的测试人员可以做运维工程师的事情,测试也需要建设环境。好的测试人员可以熟悉linux和shell脚本,有的可以做软件的持续部署,这是测试持续集成的技能。好的测试人员可以做生意。有人在银行参加软件测试,被银行录取了。因为人家对银行业务很了解,所以从软件测试中得到了甲方的业务人员。所以考试很容易做,但是要做好,做到精通也很难。考验职业发展的路很长,需要你不断学习,不断进步,提高自己的各方面技能,包括软技能和硬技能。硬技能主要和技术有关。这是你吃的东西。软技能主要是你在工作中的情商,如何处理矛盾,如何处理人际关系等等。
到了这里,对软件测试的职业发展有了一定的了解。我动力十足,压力更大。很迷茫,不知道如何入手,如何改善。所以,我们来谈谈如何提高自己的技术能力。一般是指,从软件测试开始,学习各种技术,然后达到更好的职位和薪资水平。这是一个漫长而痛苦的过程。很多人没有开始就放弃了,也有很多人,开始了一点点,就死在沙滩上,不想改变自己。有些人已经向前迈进了一大步,初步达到了自己想要的结果和目标。
测试学习成长路线
下面我给出一条学习成长路线,可能不太适合你,但希望对你有帮助。
以上只是描述了一个测试职业的发展规划,重点是代码技术。测试领域包括服务器端测试、客户端测试、安全测试、性能测试、接口测试、自动化测试、渗透测试和测试开发。所以,如果你达到了测试开发的水平,你测试其他方面也不会太难。
软件测试理论知识
这是必须的。当然,我不知道一些基本的概念,所以有时间就要学习和复习软件测试理论。这一部分包括软件测试的基本理论和方法。比如软件生命周期,测试用例编写方法,软件测试原理。软件测试管理相关技术,软件各阶段的评审,软件测试计划的编制,软件测试过程的管理,软件验收,软件测试全过程的一些文档规范等。
语言基础
这部分,可以选择Java或者Python入门。或者其他编程语言,这部分,我的博客里有入门教程。就看你适合Python还是Java了。个人建议先入门Python再学Java。对于初学者来说,努力学习一个月就足够了。你可以在一周内学会第二种语言。基本上很多思路和语法是相通的。
手动到自动
这是一个痛苦的过程。有的人天天看语言基础,不知道怎么练,天天进不了门。在这里,你学完一门语言后,一定要找东西练习,熟悉这门语言的基本用法。推荐,用Selenium学习Web自动化测试。脚本可以帮助你提高对基础语言知识的理解和应用。在练习自动化脚本的过程中,你会获得乐趣,这有助于提高你的学习兴趣。
自动化脚本开发
这是在手工到自动化的过程之后,你需要大量的练习。如果Selenium自动化脚本开发,你至少要完成100个自动化测试用例,并且需要熟练使用seleinum。快速编写自动化测试用例。
了解并接触框架
这里说的框架是自动化测试框架,不是开发中使用的框架。继续深入研究Selenium和一些自动化测试框架。比如什么是框架,它解决什么问题,它的组件是什么。这部分包括单元测试框架,Java中的Junit或TestNG,Python中的unit test。
设计一个简单的测试框架
比如Python+Selenium从零开始,设计一个自动化测试框架。先学会设计一个POM设计思路的框架。
常见的设计框架设计
前面我们有了POM设计框架的思路。接下来,我们将了解数据驱动框架、关键字驱动关键、混合测试框架和行为测试驱动框架。
linux与数据库
不用说,当自动化测试达到一定深度时,也需要将数据库与代码连接起来进行测试。Linux和shell脚本基本上会暴露在测试环境中。如果想做自动部署和运维,学习常用的linux和shell脚本是很有必要的。这部分请看linux和shell脚本介绍系列。
版本控制和持续集成
公司里有人接触过版本控制软件,比如SVN和git。随便选一个你们公司在用的版本管理软件,学习一下,学习一下基本操作。工作中常见的需要掌握。持续集成是一个热门话题。看到持续集成,应该会想到詹金斯。你需要安装和简单配置Jenkins,如何在上面挂一个作业等等。在这一部分,我接下来会写一系列的文章。
web前端
在这里是为后期学习web开发做准备。在之前的自动化测试中,我们已经接触到了一些前端的知识。这部分已经用javascript入门教程写好了,接下来我们再写HTML和XHTML,XML和CSS等入门教程。
写一些小程序
如果选择Python,可以试试爬虫。其实Java也可以写爬虫。
完全掌握一门编程语言
这个可以和写一些小程序放在一起学习练习。如果选择Python,可以学习Django框架来开发一个web或者博客。如果是Java,需要学习web开发入门,尽量了解Java的三大web框架,优先考虑SSH框架。后期就不介绍了,也不会,这也是我的学习目标之一。
虽然在市场上,很多测试开发工程师并不具备这里所说的各种水平,但是他们有一个特点:他们的开发和代码基础特别扎实,有的甚至做了一两年的开发。我强烈建议你按照这个学习路线,不断学习,努力达到测试和开发的目标。如果达不到,也会向这个目标靠近。你当时的能力也会让大多数人羡慕你。相信自己,努力学习,坚持,不要轻易放弃。责任编辑: