软件测试开发工程师都需要学什么?

如题所述

第一步,测试基础:
测试基础是软件测试最最最重要的部分,只要你是做测试,不管是什么测试,测试的基础、理论知识都是必须学会的。大概就包括:测试计划编写、设计测试用例、编写测试报告、编写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、主从、集群。
第六步:项目实战
最好参与真实项目的测试工作,积累真实项目的测试经验。
成为优秀软件测试员之提升条件,如果你想成为一个更优秀的软件测试员的话,除了上面那些,你也最好能够具备开发语言即代码编写能力,虽然不会写代码也能做测试、但是如果你想做到高级测试工程师以上、那么代码编写能力就是必选项、如果不会写代码、那么你不可能成为高级测试。高级测试工程 师的一部分工作就是在写测试工具。虽然测试也需要写代码但不需要和开发一样那么精通某一门语言、可是测试却需要了解很多门开发语言(举一个简单的例子:你 现在所在的项目从C++语言、2年后你换工作了、新公司的开发语言是Java或者是VB什么的)所以在开发语言中测试需要更广的学习。
成为软件测试员之必备条件,就是你一定要有良好的心态。心要静、细心耐心、责任心。心静不下来无法对bug展开发向思维及拓展想像。任何一个测试最先面对的心理压力就是重复性的劳动。在你的测试生涯中,一定会碰见很多心理的考验,自己对于质量心里没有底、或者由于产品发布问题或者达到了测试瓶颈时候的困惑等。每个人都有自己的背景以及性格,往往对于测试来讲,就是考验心理素质的时候,这个时候就需要你自己不断地去克服这些心理
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-10-03
都是零基础入学的,这是软件开发的全部课程,要是感兴趣的话可以了解一下:
第一阶段
1、计算机操作基础
2、Office办公自动化
3、计算机组装与维护
4、C语言

第二阶段
1、SQL Server2005数据库设计
2、和高级查询
3、数据结构
4、C#面向对象程序设计
5、HTML5与CSS3开发
6、JavaScript
7、jQuery高级编程
8、PHP开发

第三阶段
APP Development
1、JavaScript特效制作
2、jQuery应用开发
3、HTML5与CSS3开发
4、Java面向对象程序设计

第四阶段
JAVAWEB Development
1、产品流程应用
2、移动平台界面设计
3、Oracle数据库开发
4、JavaWeb应用开发
Mobile APP Development
第2个回答  2017-03-28
开发一个好的软件,40%以上的时间用在测试上,所以软件测试工程师非常重要,用我们的话来说很吃香。现在从事程序员的人有很多,做测试工程师的人少点,工作压力不太大

测试工程师应该具备的三项基本素质[1] 很多年轻或者刚刚从事测试工作的工程师,经常会问:“测试工程师需要什么技能或者具有什么素质才是合格的?”与开发人员相比,测试人员不但需要一技之长,还需要掌握诸如操作系统、数据库、网络等多方面的知识。

经过这几年的发展,国内IT公司的测试水平有了很大的提高,但是与此同时,很多测试工程师也迎来了个人的发展瓶颈:很多人从测试工程师做到了测试经理的职位,不知道下一步如何发展;或者每天机械地从事着功能测试工作。

根据柠檬班软件测试多年的经验,一个有竞争力的测试人员要具有下面三个方面的素质:

计算机专业技能

计算机领域的专业技能是测试工程师应该必备的一项素质,是做好测试工作的前提条件。尽管没有任何IT背景的人也可以从事测试工作,但是一名要想获得更大发展空间或者持久竞争力的测试工程师,则计算机专业技能是必不可少的。计算机专业技能主要包含三个方面:

测试专业技能

现在软件测试已经成为一个很有潜力的专业。要想成为一名优秀的测试工程师,首先应该具有扎实的专业基础,这也是本书的编写目的之一。因此,测试工程师应该努力学习测试专业知识,告别简单的“点击”之类的测试工作,让测试工作以自己的专业知识为依托。
测试专业知识很多,本书内容主要以测试人员应该掌握的基础专业技能为主。测试专业技能涉及的范围很广:既包括黑盒测试、白盒测试、测试用例设计等基础测试技术,也包括单元测试、功能测试、集成测试、系统测试、性能测试等测试方法,还包括基础的测试流程管理、缺陷管理、自动化测试技术等知识。
软件编程技能
“测试人员是否需要编程?”可以说是测试人员最常提出的问题之一。实际上,由于在我国开发人员待遇普遍高于测试人员,因此能写代码的几乎都去做开发了,而很多人则是因为做不了开发或者不能从事其它工作才“被迫”从事测试工作。最终的结果则是很多测试人员只能从事相对简单的功能测试,能力强一点的则可以借助测试工具进行简单的自动化测试(主要录制、修改、回放测试脚本)。
软件编程技能实际应该是测试人员的必备技能之一,在微软,很多测试人员都拥有多年的开发经验。因此,测试人员要想得到较好的职业发展,必须能够编写程序。只有能给编写程序,才可以胜任诸如单元测试、集成测试、性能测试等难度较大的测试工作。

此外,对软件测试人员的编程技能要求也有别于开发人员:测试人员编写的程序应着眼于运行正确,同时兼顾高效率,尤其体现在与性能测试相关的测试代码编写上。因此测试人员要具备一定的算法设计能力。依据作者的经验,测试工程师至少应该掌握Java、C#、C++之类的一门语言以及相应的开发工具。

网络、操作系统、数据库、中间件等知识:

与开发人员相比,测试人员掌握的知识具有“博而不精”的特点,“艺多不压身”是个非常形象的比喻。由于测试中经常需要配置、调试各种测试环境,而且在性能测试中还要对各种系统平台进行分析与调优,因此测试人员需要掌握更多网络、操作系统、数据库等知识。
在网络方面,测试人员应该掌握基本的网络协议以及网络工作原理,尤其要掌握一些网络环境的配置,这些都是测试工作中经常遇到的知识。
操作系统和中间件方面,应该掌握基本的使用以及安装、配置等。例如很多应用系统都是基于Unix、linux来运行的,这就要求测试人员掌握基本的操作命令以及相关的工具软件。而WebLogic、Websphere等中间件的安装、配置很多时候也需要掌握一些。
数据库知识则是更应该掌握技能,现在的应用系统几乎离不开数据库。因此不但要掌握基本的安装、配置,还要掌握SQL。测试人员至少应该掌握Mysql、MS Sqlserver、Oracle等常见数据库的使用。

作为一名测试人员,尽管不能精通所有的知识,但要想做好测试工作,应该尽可能地去学习更多的与测试工作相关的知识

软件测试工程师-IT就业新亮点,
根据有关职位统计资料显示,在国外大多数软件公司,1个软件开发工程师就需要辅有2个软件测试工程师。目前,软件测试自动化技术在我国则刚刚被少数业内专家所认知,而这方面的专业技术人员在国内更是凤毛麟角。根据对近期网络招聘IT人才情况的了解,许多正在招聘软件测试工程师的企业很少能够在招聘会上顺利招到合适的人才。

随着中国IT行业的发展,产品的质量控制与质量管理正逐渐成为企业生存与发展的核心。从软件、硬件到系统集成,几乎每个中大型IT企业的产品在发布前都需要大量的质量控制、测试和文档工作,而这些工作必须依靠拥有娴熟技术的专业软件人才来完成。而软件测试工程师就是其中之一。

据了解,由于软件测试工程师处于重要岗位,所以必须具有电子、电机类相关专业知识背景,并且还应有两年以上的实际操作经验。他们应熟悉中国和国际软件测试标准,熟练掌握和操作国际流行的系列软件测试工具,能够承担比较复杂的软件分析、测试、品质管理等任务,并能独立担任测试、品质管理部门的负责人。一般情况,软件测试工程师可分为测试工程师、高级测试工程师和资深测试工程师三个等级。

在具体工作过程中,测试工程师的工作是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。对软件测试工程师而言,必须具有高度的工作责任心和自信心。任何严格的测试必须是一种实事求是的测试,因为它关系到一个产品的质量问题,而测试工程师则是产品出货前的把关人,所以,没有专业的技术水准是无法胜任这项工作的。同时,由于测试工作一般由多个测试工程师共同完成,并且测试部门一般要与其他部门的人员进行较多的沟通,所以要求测试工程师不但要有较强的技术能力而且要有较强的沟通能力。

因此,在企业内部,软件测试工程师基本处于“双高”地位,即地位高、待遇高,有的人月薪可高达8000元。可以说他们的职业前景非常广阔,从近期的企业人才需求和薪金水平来看,软件测试工程师的年工资有逐年上升的明显迹象。测试工程师这个职位必将成为IT就业的新亮点。本回答被提问者和网友采纳
第3个回答  2016-09-19
每天在忙忙碌碌的维持生计的工作中,甚至没有好好想过我在这个阶段应该做什么?而不是被要求去做什么。
经过这么几年在软件测试行业的折腾,也有好好的想过这个问题,在特殊的阶段我们应该做好什么?尤其在软件测试行业。
大家都比较看好软件测试行业,只是因为表面上看起来:钱多事少加班少。其实这个都是针对个人运气好的童鞋才会有此待遇。在不同的阶段做好不同阶段的事情,才有可能离这个目标更近,作为一枚软件测试人员,也许下面才是我们最真实的写照。

{第一年}

当年也是一头撞进了软件测试行业。迫切的想要了解这个行业,它的升职模式,如何才能薪资更高。但是以过来人的经历,告诉你:做好当前的事情。把上司交给你的每一份任务都仔细认真的去完成,体现你作为一个初入职场的新人的价值。新人进去,不奢望你能够做多大的贡献,只希望交代给你的事情,不用给你擦屁股就行。
第一年,如果你每天都很积极,迫切的想要完成更多的任务,那么这一年的你将会进步最快。对功能业务逻辑的整体把握感,对测试用例的编写能力,对功能测试进度把握,这些都将会成为你以后工作的坚实基础。这一年,请打好你的基础,暂时忘记自动化代码工具这些,你没有坚实的软件测试行业内知识和接触到的一些专业名词,你拿着工具也都是徒然。

{第二年}

经过第一年的努力,你已经具有比较牢靠的软件测试基础,已经完成了一轮一轮的重复的手工测试,对,在这个阶段我们应该做什么?是每天上班等下班还是利用这段时间做点有意义的事情?毋庸置疑,如果你是积极向上的请你,那答案肯定是后者。
建议是:把你每天做的重复的功能测试,利用工具来做。
不建议大家过早的接触代码或者是性能这块,如果你还是职场第二年,因为你还见识的太少,根本达不到写代码和性能的这个阶段,要能够写脚本和做性能,需要你对整个测试框架和业务逻辑都有一个比较强的把握能力,否则,你做的事情,就会是无用功。就好比你学写代码,却发现自己永远停留在print(“hello world”)的水平;你学性能,缺发现自己永远停留在录制脚本的水平。
可以接触的工具:QTP/Jmeter,这两款工具都可以帮助你减少相对的劳动力,把一些重复的工作都利用工具来进行。学好了用活了,下次升职加薪或者是换工作,幸运之神都不会错过你。

{第三年}

终于迈入了第三个年头,恭喜恭喜,还能够坚持说明你没有被这个行业淘汰。经过两年的基础打底,如果你不是混混过日子,那么你的基础会让你的工作效率大步提升,你也会有更多的时间来做的别的事情,毫无疑问还是:学习。
这个时候,我们可以尝试着接触一些代码和一些框架,把你自己所学的知识融入到你自己的项目中去。能够把自己的项目整理出一个测试框架,那么你就是对这个公司的工作是有非常大的推进作用的!
建议:学习Python,selenium等。

{第四年}

有了代码基础后,发现你的工作量又被简化&优化了。这个时候我们应该对网站的架构,代码知识,数据库知识,网络瓶颈,系统优化等各个方面都有了比较深入的了解,我们终于可以进一步来做性能测试了!这个时候,我们突然明白:做性能测试不仅仅是录制脚本了!你需要去优化脚本,去设计场景,去获取目标用户量,去执行压力测试,去分析压力结果,做好这些之后,去综合分析发生性能瓶颈的是数据库优化问题,还是网络瓶颈问题还是本来的架构就存在问题?
推荐:LR/Jmeter

{第N年....}

未完待续.......
如果你能坚持到第五个年头,我希望是对软件测试行业而言是个有用的人;对软件测试行业有点点推动的人;对公司软件测试工作有建树的人。
第4个回答  2019-08-02
主要会学习
SQL Server2005数据库设计和高级查询、数据结构、C#面向对象程序设计、HTML5与CSS3开发、JavaScript、jQuery高级编程、PHP开发、软件工程、JAVA面向对象程序设计、J2EE服务器端高级编程、APP应用程序开发、oracle数据库、Android应用开发等。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网