
软件测试技术是软件开发过程中的一个重要组成部分,是贯穿整个软件开发生命周期、对软件产品(包括阶段性产品)进行验证和确认的活动过程,其目的是尽快尽早地发现在软件产品中所存在的各种问题——与用户需求、预先定义的不一致性。检查软件产品的bug。写成测试报告,交于开发人员修改。
软件测试相对来说是比较容易学,容易上手的IT行业,至于学多久,那看你是要学到什么程度了。只是想就业的话,2-3个月足矣。还得看你有没有计算机基础。如果说还要学性能,学自动化,那你又得再花几个月的时间,而且还需要有项目经验的积累,不是说学完了就可以了,项目经验对于测试人员来说是很宝贵的,因为很多问题都是在实 *** 中才会遇到的。没有项目经验的测试人员是没有核心竞争力的。
首先,我们得知道什么是软件测试。
顾名思义,就是在规定的条件下运行产品或程序,发现程序错误,衡量软件质量,评估其是否能满足设计要求的过程。一般来说,软件测试是保证软件质量的整个过程的集合。
软件质量会根据不同的产品、行业、阶段而变化,所以测试要覆盖软件的整个生命周期,比如研究、需求、设计、研发、测试、上线、运维等。
随着互联网的不断发展,企业对软件测试人员的重视程度也在不断的提高,要知道,有时候由于软件的不稳定或者前期未测试的话,是非常有可能导致软件的直接崩溃的。所以,今天,北京IT培训就一起来了解一下一个好的软件测试程序员应该如何成长发展。
一、心理适应期
由于软件公司千千万万、每个公司的规章制度都不一样,甚至有一些公司对于软件的质量并不是很了解,使软件测试这个行业总会被忽略。还有一些行业中的人觉得技术不太好才会去做测试人员。因为他们会由于前期的忽略而产生心理不适应,所以在上班的过程中经常会培养自信心,并且进行定时培训使他们以更高的技术来测试应用。
二、熟悉流程阶段
做软件测试工作人员主要的就是对测试软件的熟悉,并且能够将它所涉及到的所有业务都掌控好,这样才能够更好地将软件检测完毕并较好检测出应用中存在的隐患。
三、自我提升阶段
即使对需要 *** 纵的流程再熟悉,也无法算作技术方面的提升,所以测试人员一定要在工作的过程中不断的提升技术方面的能力,这样才能更全方位的找出软件的bug,并且完善编辑出修改方案给予开发者确认或维修、升级。
四、团队沟通阶段
一个人始终无法将事情完成得非常好,所以,在整个测试的过程中工作人员必须要学会如何与上下级进行沟通。只要懂得如何与上司汇报,他才能够将问题直接追究到个人,这样才不会再次出现同等隐患。而与下属进行沟通可以方便工作、使自己的工作量减少,并且能够培养双方之间的默契,对于之后的测试方面工作也是非常好的。
五、自我领悟阶段
通过以上的这几个方面之后,软件测试工作人员即可以进入自我领悟阶段,不断积累工作中的经验才能够迈向一个更好的阶层,为公司也为自己提高测试技术。
以上的这几个阶段就是测试工作人员必须经历过的成长历程,也只有通过这些方面的锻炼才能够获得更大的进步,并且这些方面的领悟不仅仅是在测试工作中能够用到,日常为人处事中也非常有帮助。
1入门轻松。就算不是计算机相关专业也可以。
2专注于业务。软件都是为了解决实际的业务问题而存在的,比如银行类软件,会计类软件,快递类软件,出行类软件,各有各的业务。
3职业寿命长。测试工作由于其特殊性,可以从业很长时间,是IT行业为数不多的。
4要想高薪,得有技术。这个包括很多,网络,数据库,开发语言,自动化测试软件的 *** 作,编写代码,等很多。如果好的话,还有性能测试,安全测试等高阶测试岗位。
5相比于其他行业的入门工资,很高。晋升靠技术
测试人员的职责就是通过测试报告向项目的主要涉众传达产品的信息,即他是作为一个重要的信息源,为质量体系的运作提供到位的服务。
软件测试员是指根据测试计划和测试方案进行软件测试;能够针对软件需求开发测试模型,制定测试方案,安排测试计划,并对测试项目进行管理的专业人员。其职业等级可分为四级、三级和二级等不同的级别。
作为一个测试人员的角色定位,以及刚入门需要
了解的相关知识和心态方面的问题。说实话,感
觉到很为难,有时候有些事情做起来感觉并不是
很难,但是要把它转化为文字的形式表达出来对
我来说确实比较为难的。但是我还是很愿意去用
一支拙笔来慢慢描述我对测试人员定位的一个理
解:
当一个人在一个漫长而坎坷的道路上走过之
后,我相信他一定会有自己沉淀下来的东西。前段
时间参加华东测试交流会时,听到海松大哥解析测试
人员如何定位自己的角色的时候就感触很深,感觉自己
还有很多值得钻研的地方,在测试领域,自己的很多认识
还是很肤浅的。随着公司规模逐渐扩大,测试人员也由以前的几个人发展到现在的几十人。队伍的壮大是显而易见的。然而很多刚进入门的同仁却开始慢慢对做测试流露出迷茫的眼神,问其原因,很简单,做测试学不到东西,整天就鼠标点点,键盘敲敲,很难学到真正的东西。听了之后不由得露出理解的笑容,想当年我也是从这样的境遇走过来的。刚进入公司的时候就让做测试,经历了同样的鼠标点点,键盘敲敲的经历。然而正是这样的一些成长经历让我在平淡中明白了很多道理,并且慢慢从因为工作而做测试转化为因为兴趣爱好而继续做测试工作。做测试不仅仅是表面看到的这种敲敲点点现象的延续,还有更深层次的内涵,只是我们很多人还没到达这个境界而已,所以看起来很枯燥。(我也没达到这个境界,不过我知道自己做的工作并不是很枯燥的,呵呵)。
刚开始做测试的朋友很多都在做黑盒测试,而黑盒测试往往对代码编写能力要求不是很高,这样给刚入门的人就造成了一个测试人员不需要太多知识的误解。然而,做测试往往需要很广泛的知识。不仅仅只是专业上的,而且要了解很多开发人员不了解的东西,在一个系统里面开发人员可以只了解客户需求,而我们的测试人员需要了解整个全局的东西。呵呵,感觉有点统筹全局的成就感。不过有时候相对于开发人员来说也的确是这样的。开发人员可以不用太多了解用户的需求,而我们却需要能够准确捕获用户的观点,对很多细节需要非常注意。往往很多人在初入测试行业的时候非常热衷于测试工具的学习以及使用,其实这并不是一个很系统的认知。知识的学习也是分阶段的。测试这两个字很表面来看很简单,只是给程序挑错误,找出bug来,但是在整个软件开发过程中我们该如何把测试跟开发结合起来有效地进行都需要经过实践来证明。而这些不是工具所能完成的。
我们对整个测试流程方面的东西需要了解得很多很多,而工具只是需要了解的其中一部分而且是比较小的一部分知识而已。你所了解的不仅仅只是测试的表面,你需要了解测试的流程,你需要了解如何用一个好的测试计划来规划我们的测试时间、测试范围(有些公司把测试范围的设计归纳在测试需求里面,但是很多公司都是在测试计划里面),需要了解如何用一个好的测试用例来覆盖整个测试范围之内的测试实施。了解如何保证所测试出来的bug是开发人员的问题而不是因为自己了解不够导致出现的问题。Bug分析报告之内如何总结问题都是我们需要注意到的知识。对自己的测试时间也需要进行详细规划,尽量多地考虑进去各种可能。这样才可以尽量减少相关的风险。
测试里面的知识学习可以分为以下三个阶段来进行(这个阶段只是自己的一种个人见解):
第一个阶段我们必须要让做测试的人明白测试在整个软件工程里面的重要性,了解测试的相关基础知识,并且在了解这些知识的过程中逐渐挖掘出他对测试的兴趣。兴趣爱好是很好的从事一项工作的一个重要条件。让一个对测试丝毫不懂而且不感兴趣的人去直接去做测试,你不觉得是在耽误别人的青春吗?
第二个阶段我们必须对测试的流程的管理工作通过实际的软件测试有个非常明确的认识。因为很多时候工作都是在团队相互协调的情况下进行的,所以对于整个软件开发流程以及开发流程当中的测试流程都需要很熟悉,这样才可以更好的配合工作。当我们这些都很熟悉并且在工作当中应用很流畅的时候,我们就可以对测试工具进行相对应的学习。诚然,现在很多公司在招聘测试人员的时候总是要求了解自动化测试工具,实际上据了解,很多公司并不能真正用自动化测试。所以不要一进门就想着学习自动化测试工具,很多知识在你了解了其他知识之后学习效果跟用途可能会更好。在了解测试相关流程的同时我们必须扩充我们的其他相关知识,包括对我们的产品的客户的需求的了解要比开发人员了解更全面,更深入。这样才能保证我们的流程,我们的测试按照客观的正确的方向前进,而不至于被开发人员的思想所牵引。呵呵。我喜欢做事主动而不是被动的去执行。
到第三个阶段我们可以跟区分专业一样走自己喜欢的途径:一方面可以继续深入提高自己的测试的专业技能并且能够真正从事自动化测试,成为技术领域里面的专家。另一方面我们可以慢慢趋于测试管理方面。上次在交流会上,海松大哥对测试人员的发展阶段跟发展路径规划曾作出一个很形象的比喻来,我画了一个粗略的流程,大家可以看看下面的发展图:(自下向上的发展趋势)(当然并不是每个人都在这个曲线发展之内)
从这个图形我们大家也可以粗略的看出,对于初级测试工程师,这是两个不同的发展方向,但是最终还是发展为一个终点(PM)。从一个初级测试工程师晋升到一个高级测试工程师比较快,但是从一个初级测试工程师发展到一个Team Leader所需要的时间相对比较长。而从一个高级测试工程师发展到一个资深测试工程师花费时间更长一点,到达资深测试工程师之后就可以很容易做到测试主管了,以后可以发展到PM。当然从初级测试人员到高级、资深测试人员在上面的图中并不是表述为“曲线发展过程”的,很多时候行业经验、行业知识的累积等都很重要。而这点只有深入发展的人才会发现其重要性的。很多随着时间的推移和经验的增长,一些沉淀下来的东西不是表现在字面上,别人就可以理解并领悟的。所以要有信心的同时我们做事还必须有耐心,罗马非一日建成。相信明天就要紧紧把握今天。
我们很多人在测试的时候感觉到不爽的另外一个比较大众化的原因,可能就是对测试不感兴趣的同时知识层次不够。(建议接触测试一年之后还对此不感兴趣的朋友找找自己的原因,实在找不出来就早点看看别的比较好发展的行业吧。)。因为自己知识层次的不够,这样往往感觉自己找出的bug在开发人员那里得不到很好的重视,感觉自己的劳动成果没有得到相应的尊重一样。一个测试人员在跟开发人员打交道的时候往往会产生这么一个现象,随着开发的进行,测试人员提交的bug越来越不被开发人员重视了,这里面除了开发人员比较忙碌的缘故之外,另外一个不容忽视的原因就是我们测试人员自身的知识不够层次,很多时候因为我们不了解需求,不了解相关专业知识而误认为正确的东西是bug。任何一个领域里面的人我想都应该有这样的想法并且比较反对这个想法:那就是外行对内行进行不正确的指点,这相当于对别人劳动成果的一种不负责任的否定。所以我们一定要加强我们自身的专业知识的学习。这个时候大家可能会问,那么一个真正的测试人员应该具备哪些知识呢?我想在除了相关专业知识之外还有一些比较共性的知识需要我们大家了解,专业知识因为行业的不同所以有很多的不同之处,这儿不详细介绍了,我从大众化的方面来阐述下面几个需要我们注意的地方,这也是作为一个测试人员应该具备的基本素质:
1、我们需要具备很好的沟通能力:沟通是人类相互进步的一个重要标志,用在我们这个行业里面沟通也比较适用。我们的沟通往往不仅是跟开发人员的沟通,有时候也会跟我们的客户进行沟通的。这是两种不同类型的人,他们关心问题的侧重点也不同。所以我们沟通时候需要掌握一定的技巧,这样才能从客户那儿得到比较准确的需求。有时候我们的工作会被开发人员认为是“破坏”性的工作,这样就会引起我们跟开发人员的冲突,所以当我们发现一个bug之后如何跟开发人员沟通也是一门艺术。很多时候我们不仅仅是把bug写出来,也要很好地说给开发人员知道。从而达到我们彼此想要的一种结果。
2、我们需要具备很好的自信心:很多时候开发人员会经常认为测试人员的开发相关知识不如自己,所以会有一种轻视的态度,这个时候我们除了补充我们的专业知识之外还需要有很强的自信心。呵呵。如果允许他对我们说这说那,那么我认为我们的工作还没开展就已经处在十分不利的地步了,我们将会被他们牵着鼻子走。这种现象很正常。而我却属于那种很讨厌被别人牵着鼻子走的人。所以我知道我们一定要很专业才能让别人尊重自己的劳动成果并听取自己的见解。当然这种自信心也是建立在心平气和下的沟通,不是完全对立的。
3、我们需要保持一种怀疑的精神:(这点我很擅长,我经常怀疑那些跟我擦肩而过的PLMM对我放电。所以总是。。。。。。,呵呵,结果最近医务室大夫说我患了神经质。亏大了)我们会经常碰到这样一种情况,我们往往发现的bug交给开发人员时他们总是尽他们最大的努力解释每个他们认为不是bug的bug。我们在倾听他们解释的同时必须要怀疑他们的观点直到我们自己确认过之后。
4、我们需要耐心和很好的记忆力:有时候往往一个bug需要我们很耐心的花费时间、精力去投入在上面,而且当我们再找到有些类似的bug的时候,要能从脑子里面找出来这些bug,这就需要我们有很好的记忆力。其实如果不具备这些条件了那么相关的文档就是我们最好的查询资料。我就是属于这种类型的,很多时候总是翻阅以前的文档。但是这样也有一个好处,那就是在不断的查询过程中我们对文档的修改,使文档日臻完善,当然这种完善也是相对的。
5、我们需要一颗安静的心:因为浮躁的人是找不出隐藏在深处的bug的,(所以我们的开发人员总是喜欢让我测试他们的东西,因为我汇报的bug很少,这样他们的绩效就表现得很好啊。所以我总是挨批啊。不过现在学乖了,呵呵。)所以当我们测试的时候我们应该保持内心的平静,这样我们才会保持很好的洞察力来找到那些隐藏很深的bug。而且也会抓到相关的重点的。这点是很重要的。否则你的测试跟流水账做也没什么区别,根据业务流程,根据用户需求,根据开发人员的思路一路跑下去,发现一些皮毛的bug。这不是一个好的测试人员应该做的。我们在平静当中才能保持自己的观点不被别人左右。
6、我们还需要能够承受压力并排遣压力:无须质疑,我们的工作承受着一定的压力,当然这样说有点片面,不过大体上应该是这样的。所以我们经常承受着一定的压力,客户在催促,开发人员在delay,风箱里面的老鼠两头受气。所以我们要能够承受压力,包括外界的、工作上的压力。并且不要把因为压力而导致的不好的情绪带到工作当中。学会排遣这些压力,保持一颗轻松的,平静的心,然后全身心投入到我们的工作。
上面的只是根据实际的一些经验以及曾经看过的一些朋友的见解总结而来的,还有很多其他方面的知识,但是我实在没有时间了,呵呵,很抱歉。以后有时候还可以继续补充。只是想强调一点:测试在中国的发展前景是非常好的,而这点从这几年无论测试人员和测试环境的变化还是客户对产品质量的要求越来越高都可以看出的。
还是上面说的那句老话:相信明天,就要把握今天!
随着企业对软件测试项目的重视,越来越多的零基础的人也开始加入到软件测试的求职浪潮之中。今天,我们就给大家简单分析了在软件测试行业中需要了解的一些常见问题。
1、测试负责人要进行严格的测试进度跟踪吗
很多时候,由于人力资源的不足,测试项目负责人都是在执行测试,这样就使整个项目缺乏控制,一些问题(例如:有些成员的缺陷质量不够合格;开发人员修改不及时,系统某些功能发生严重问题导致部分功能无法测试。)得不到解决,耽误了进度。所以测试负责任必须全程监控项目,尽可能多的掌握信息。通常,测试负责人需要完成下面这些内容的管理工作:测试用例执行情况;每个测试员提交的缺陷情况;测试中是否发生突发问题。
2、测试也有版本控制吗
这里的版本主要是指测试对象的版本控制,也就是指对开发部提交的产品进行版本控制。在开发小组版本管理不规范的情况下,测试小组进行版本控制十分重要,要保证测试对象是可以控制的。建议开发和测试双方进行明确的约定,可以各自指定专门的测试版本负责人,制定提交原则,对提交情况进行详细的记录,这样基本避免了版本失控导致的测试失误或无效。
3、如何处理测试人员的流动问题
人员流动不仅仅是测试部门,这是IT行业的普遍现象。从管理者角度,主管需要多多和团队内成员进行沟通,建立一个融洽的团队环境,及时掌握情况,可以早些进行相应的调整。但是只有企业建立好的用人制度,给员工提高广阔的发展空间和好的培训学习机会,才能从根本上解决这一问题。加强项目管理,强化文档管理并保证文档的有效性,可以大大减少由于人员流失带来的损失。同时,测试部门要建立培训机制,使新到员工接受直接或者间接的培训,快速适应工作。
4、为什么开发人员经常抱怨测试工程师提交的缺陷质量太差
我们经常听开发人员说:“这不是缺陷!”,“这个缺陷没有,因为我的系统上运行正常!”。测试工程师本身就是做质量工作的,提交的成果本身就应该质量高些,为什么还会有这种现象提交的缺陷引起争议是一种正常的现象,例如测试人员描述不清楚就会引起争议。减少甚至避免这种现象的方法是交叉测试,交叉测试是提高测试质量的一个有效手段,当然交叉测试会增加一定的测试成本投入。IT培训发现在测试任务完成后,测试工程师之间互相验证彼此提交的缺陷,就会避免了缺陷描述不清、因运行环境而产生的缺陷等一系列问题,从而大大降低了回归测试以及交流的成本,因而这种投入也是值得的,实际开发人员在单元测试阶段也会进行交叉测试,来提高开发质量。另外,测试人员一定要按照规范描述测试中发现的缺陷,一个缺陷至少描述清楚概要描述、详细描述、重现步骤三方面的内容,缺陷管理参考八章的内容。
以上就是关于IT行业测试开发工程师和测试工程师有什么区别全部的内容,包括:IT行业测试开发工程师和测试工程师有什么区别、软件测试是不是IT行业最容易学的 没有基础才学IT软件测试大概需要多长时间,就业前景好吗、北京IT培训分享软件测试人员在工作中的成长阶段等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)