软件测试需要学什么,软件测试好学吗 大概要学多久
一、有关于软件测试,需要学习什么内容,学到什么程度可以找到工作
第一步,测试基础:
测试基础是软件测试最最最重要的部分,只要你是做测试,不管是什么测试,测试的基础、理论知识都是必须学会的。大概就包括:测试计划编写、设计测试用例、编写测试报告、编写BUG报告单、跟踪BUG修复情况、还需要良好的沟通能力、以及各种测试阶段所使用的测试方法、单元测试、功能测试、集成测试、系统测试等。
第二步:学习脚本语言
如:python语言,当然python是一门相对简单的计算机语言,考虑长远发展,需要了解C语言或者java。都说C语言最难,但是用得确实也多。
第三步:学习软件测试工具
学习软件测试工具并不难,只是需要我们去系统的学习。比如性能测试工具loadrunner,自动化测试工具selenium、Appium,接口测试Jmeter、Postman等。虽然说工具不是万能的但是工具能为我们提高工作效率,所以必须得会熟练的使用。最关键的一点,是要结合项目具体去操作,实践出真知,理论知识在实际项目中才能得到巩固。
第四步:计算机硬件知识
做过性能测试的都知道在性能测试过程中硬件性能也是一个非常重要的指标、CPU、内存、IO、带宽等等、如果你是做硬件测试的。那么就更不用说了。交换机、路由器、防火墙这些设备都需要有所了解。
第五步:数据库测试
MySQL数据库
MySQL简介、命令行工具以及数据管理、MySQL数据查询(条件、分组、聚合函数、排序、分页、连接查询、自关联、子查询)、内置函数、项目练习、数据分表、Python操作MySQL。
Redis数据库
Redis简介、客户端和服务器、数据类型(string、hash、list、set、zset)、各种数据类型操作、Python操作Redis、主从、集群。1.一般来说,测试新人的话首先需要把基础打好,测试理论基础可以通过看一些经典书籍或网上也有很多免费的资源。
刚开始不太建议加入过多技术群或其他论坛提问,初期遇到问题可以自己搜索自己尝试解决,当然需要控制一个止损点,不要为一个问题耗费太长时间。
自学基础的同时一定要做好笔记,且一定是通过自己的理解后做的。可以使用思维导图把前后学到的东西给关联起来。之后学习到的新东西也是。
读完一本书或一个阶段结束后,可以自测一下,通过找一些经典的笔试题或一些istqb中的题目,来巩固或查漏补缺,有针对性的再次巩固学过的东西
接下来可以找一些项目来做或去众测平台看一些基本的项目测试流程,包括基本测试文档的书写规范等等
目前有好多平台会开设一些免费的公开课,通过技术讨论组可以接收消息推送,设定好时间听一些专业领域的测试方法,可以快速了解到大体的流程。(一定要经过严格筛选,选择质量高的,否则会浪费一大部分时间)
以上都是基于从整体的方向来考虑,当然很多细节问题都需要在学习过程中记录下来
给自己的学习过程制订一个详细的计划,量化到天,排好每天要学习的东西。同时最重要的是,一定要养成总结的习惯,每天总结,每个项目总结,总结测试方法,总结Bug原因,奇葩Bug等等,这些将会成为你日后工作的宝贵财富。
二、想要成为一个优秀的软件测试人员,应该学些什么
无论是什么时代,任何软件系统永远都不可能避免缺陷,因此这些产品在上线之前都会进行测试工作,软件测试职业入门快且工作轻松,有“钱”途更有前途。功能测试入门比较容易,如果想有更高的发展,还是要做懂一些代码,比如大厂有一种高级测试职位,叫做测试开发工程师,建议你了解下,有问题可以私信我
简单列下学习路径:
1.操作系统础及Web基础,包括:常用DOS命令,进制转换,逻辑代数,B/S结构,C/S结构
2.接口测试技术,包括:网络体系结构,TCP/IP协议,JSON,接口测试工具POSTMAN,接口测试工具Jmeter,抓包工具FIDDLER
3.Selenium自动化测试
4.性能测试
5.python自动化
三、做软件测试都需要哪些技能
关于“做软件测试需要那些技能”这个问题,其实主要看你想做那一工种的测试。比如:如果你仅仅只做功能测试,你只需要学习软件功能测试阶段基础内容就可以开展测试工作。那测试基础包含那些内容?首先我们需要具备一定的软件测试理论知识,为什么需要学理论知识呢,从事过软件测试行业的同学就知道,平时工作的时候可能你会觉得,学的这些理论知识没有一点作用,那为什么面试的时候都要考这些理论知识?在这里就体现理论知识的价值了,为什么企业里面要面试这些理论知识呢?对企业的岗位有用?有些人认为理论没用,仅仅是你平时做的测试工作没有加以思考,从而做了很多年测试也显得不专业,自己测试的层次永远站在初级阶段来思考问题,这样其实只要离开公司跳槽会面临很大的压力,所以作为一名初级测试工程,测试基础是必备的技能,需要重点掌握,才能从面试中脱颖而出。
其次就是基于项目实践的软件测试过程活动,主要包括测试流程,测试阶段性的内容,当然也包括平时常用的一些缺陷管理工具,测试的规范文档等内容,如果把这些知识点掌握了,应用功能测试就不在话下。
再次:如果你是从事自动化测试或者性能测试岗位,你必须掌握一门编程语言以及相关接口测试的基础和测试工具,因为语言是为自动化测试打基础,我们所有的自动化测试都是基于代码来编写测试脚本,所以如果没有编程功底,自动化测试是无法开展去下的,基于性能测试也需要结合编程语言与接口测试基础开展测试,因为性能测试是基于协议的而开展,基于功能协议的一种测试,性能测试不用通过界面,只需要有接口测试文档即可,再在接口测试的基础上增加用户量从而来完成性能测试,首先需要掌握一定的自动化与性能测试工具,包括抓包工具,计算机网络知识、编程语言、操作系统、性能监控工作相组合,就能应付性能测试与自动化测试岗位