加入学盟 登录
Scripts 学盟 返回首页

momo的个人空间 http://www.iscripts.org/?3 [收藏] [复制] [分享] [RSS]

日志

软件测试工程师应该具备哪些素质?

已有 667 次阅读2012-3-13 11:30

 开发一个好的软件,40%以上的时间用在测试上,所以软件测试工程师非常重要,用我们的话来说很吃香。现在从事程序员的人有很多,做测试工程师的人少点,工作压力不太大
 
  测试工程师应该具备的三项基本素质[1] 很多年轻或者刚刚从事测试工作的工程师,经常会问:“测试工程师需要什么技能或者具有什么素质才是合格的?”与开发人员相比,测试人员不但需要一技之长,还需要掌握诸如操作系统、数据库、网络等多方面的知识。
 
  经过这几年的发展,国内IT公司的测试水平有了很大的提高,但是与此同时,很多测试工程师也迎来了个人的发展瓶颈:很多人从测试工程师做到了测试经理的职位,不知道下一步如何发展;或者每天机械地从事着功能测试工作。
  根据作者多年的经验,一个有竞争力的测试人员要具有下面三个方面的素质:
 
  计算机专业技能
  计算机领域的专业技能是测试工程师应该必备的一项素质,是做好测试工作的前提条件。尽管没有任何IT背景的人也可以从事测试工作,但是一名要想获得更大发展空间或者持久竞争力的测试工程师,则计算机专业技能是必不可少的。计算机专业技能主要包含三个方面:
 
  测试专业技能
 
  现在软件测试已经成为一个很有潜力的专业。要想成为一名优秀的测试工程师,首先应该具有扎实的专业基础,这也是本书的编写目的之一。因此,测试工程师应该努力学习测试专业知识,告别简单的“点击”之类的测试工作,让测试工作以自己的专业知识为依托。
 
  测试专业知识很多,本书内容主要以测试人员应该掌握的基础专业技能为主。测试专业技能涉及的范围很广:既包括黑盒测试、白盒测试、测试用例设计等基础测试技术,也包括单元测试、功能测试、集成测试、系统测试、性能测试等测试方法,还包括基础的测试流程管理、缺陷管理、自动化测试技术等知识。
  软件编程技能
  “测试人员是否需要编程?”可以说是测试人员最常提出的问题之一。实际上,由于在我国开发人员待遇普遍高于测试人员,因此能写代码的几乎都去做开发了,而很多人则是因为做不了开发或者不能从事其它工作才“被迫”从事测试工作。最终的结果则是很多测试人员只能从事相对简单的功能测试,能力强一点的则可以借助测试工具进行简单的自动化测试(主要录制、修改、回放测试脚本)。
 
  软件编程技能实际应该是测试人员的必备技能之一,在微软,很多测试人员都拥有多年的开发经验。因此,测试人员要想得到较好的职业发展,必须能够编写程序。只有能给编写程序,才可以胜任诸如单元测试、集成测试、性能测试等难度较大的测试工作。
  此外,对软件测试人员的编程技能要求也有别于开发人员:测试人员编写的程序应着眼于运行正确,同时兼顾高效率,尤其体现在与性能测试相关的测试代码编写上。因此测试人员要具备一定的算法设计能力。依据作者的经验,测试工程师至少应该掌握Java、C#、C++之类的一门语言以及相应的开发工具。
 
  网络、操作系统、数据库、中间件等知识:

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

  数据库知识则是更应该掌握技能,现在的应用系统几乎离不开数据库。因此不但要掌握基本的安装、配置,还要掌握SQL。测试人员至少应该掌握Mysql、MS Sqlserver、Oracle等常见数据库的使用。
  作为一名测试人员,尽管不能精通所有的知识,但要想做好测试工作,应该尽可能地去学习更多的与测试工作相关的知识
  软件测试工程师-IT就业新亮点
  根据有关职位统计资料显示,在国外大多数软件公司,1个软件开发工程师就需要辅有2个软件测试工程师。目前,软件测试自动化技术在我国则刚刚被少数业内专家所认知,而这方面的专业技术人员在国内更是凤毛麟角。根据对近期网络招聘IT人才情况的了解,许多正在招聘软件测试工程师的企业很少能够在招聘会上顺利招到合适的人才。

  随着中国IT行业的发展,产品的质量控制与质量管理正逐渐成为企业生存与发展的核心。从软件、硬件到系统集成,几乎每个中大型IT企业的产品在发布前都需要大量的质量控制、测试和文档工作,而这些工作必须依靠拥有娴熟技术的专业软件人才来完成。而软件测试工程师就是其中之一。
  据了解,由于软件测试工程师处于重要岗位,所以必须具有电子、电机类相关专业知识背景,并且还应有两年以上的实际操作经验。他们应熟悉中国和国际软件测试标准,熟练掌握和操作国际流行的系列软件测试工具,能够承担比较复杂的软件分析、测试、品质管理等任务,并能独立担任测试、品质管理部门的负责人。一般情况,软件测试工程师可分为测试工程师、高级测试工程师和资深测试工程师三个等级。
  在具体工作过程中,测试工程师的工作是利用测试工具按照测试方案和流程对产品进行功能和性能测试,甚至根据需要编写不同的测试工具,设计和维护测试系统,对测试方案可能出现的问题进行分析和评估。对软件测试工程师而言,必须具有高度的工作责任心和自信心。任何严格的测试必须是一种实事求是的测试,因为它关系到一个产品的质量问题,而测试工程师则是产品出货前的把关人,所以,没有专业的技术水准是无法胜任这项工作的。同时,由于测试工作一般由多个测试工程师共同完成,并且测试部门一般要与其他部门的人员进行较多的沟通,所以要求测试工程师不但要有较强的技术能力而且要有较强的沟通能力。
转自:领测软件测试网[http://www.ltesting.net]
原文链接:http://www.ltesting.net/ceshi/ceshijishu/rjcsgcsrm/2011/1025/203399.html
 
 
 
 
 
我建议有志做自动化测试的人,先理清楚你的思路,总结经验和教训,思考清楚怎么才能把一个项目开展起来自动化 怎么核算覆盖度,怎么计算投入回报周期,收益率,而工具并不是你首先要考虑的问题。 大多数公司不会在招你后就给你投入很多资源 你需要拿出成绩拿出结果去说服领导,你怎么根据现在的现况,制定一个方案,想好从哪里入手、怎么体现价值,然后怎么去影响别人和规范一些制度、流程。
Fh@u\'A%T464847    作为一个自动化测试人员,我大概描述一下基本要求吧:要非常熟悉黑盒测试用例设计方法、至少做过一两年黑盒测试,熟悉整个测试开发流程,熟悉软件开发模型;熟练使用一种或多种自动化测试工具,具有良好的脚本代码编写能力;进阶要求:精通自动化测试思想、原理;有良好的沟通和资源协调能力;至少熟悉一门语言并且用它开发过东西;至少精通一门自动化测试工具,至少写过一种自动化测试框架或对工具进行过二次开发并且成功运用到项目中。
2KR6`#M1cA%j]^e464847    万丈高楼平地起,没做过一两年黑盒测试的人来搞自动化开什么玩笑,难怪如此多的公司做自动化最后都是失败的,自动化测试就是来解决手工测试的问题的,你首先得本身就是一名优秀的黑盒测试人员。如果你连用例的级别都不清楚,你怎么划分自动化脚本集合?如果你本身对测试的流程都不清楚,你知道从哪些方面切入自动化吗?如果你自己都对BUG不敏感,我不敢想像你设计出来自动化工具、框架或者你写的脚本,能对BUG有多敏感?如此关联总总,不必详说,相信大家都或多或少能想出一些来。
3Pn.y$v\'tR.C!|464847    所以要从事自动化测试人员,请你先脚踏实地的把黑盒测试做好,然后在不停的充电补充,多看书、多向人请教,最重要的是多动手练,写一百个脚本和写一万个脚本,并不仅仅是数量增大这么简单,那会是什么样的问题呢?你做了就知道!

全部作者的其他最新日志

热门日志导读

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 加入学盟

手机版|Scripts 学盟   |

GMT+8, 2024-4-25 22:04 , Processed in 1.049315 second(s), 15 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部