软件测试工程师和程序员的区别|从程序员到软件测试工程师的路该怎么走

职场打拼 2024-02-07 网络整理 可可

【jianli.jxxyjl.com--职场打拼】

  从程序员到软件测试工程师的路该怎么走?我想大家都知道这是一个晋升向上的方向,这条路该怎么走呢?今天小编将与您探讨一下这个问题。

  程序员(英文Programmer)是从事程序开发、维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、高级程序员、系统分析员,系统架构师,测试工程师五大类。

  软件测试工程师(Software Testing Engineer)指理解产品的功能要求,并对其进行测试,检查软件有没有错误(Bug),测试软件是否具有稳定性(Robustness),写出相应的测试规范和测试用例的专门工作人员。简而言之,软件测试工程师在一家软件企业中担当的是“质量管理”角色,及时发现软件问题并及时督促更正,确保产品的正常运作。按其级别和职位的不同,分为三类。

  水往低处流,人往高处走,大家一般都会有想要向上晋升的愿望。那么从程序员到软件测试工程师是怎么样一个过程呢?从程序员到软件测试工程师的路该怎么走?让我们来了解一下:

  国内软件公司对软件测试的态度令人担忧。软件测试工程师不足,开发测试人员比例不合理。据调查,最好的企业中测试人员和开发人员的比例是1:8,有的是1:20,甚至没有专职的软件测试工程师。

  曾经参与微软Windows95、Exchange Server4.0和4.5、Internet Explorer4.0和5.0、SQL Server20xx开发与测试工作陈宏刚博士尽管已经升任微软亚洲研究院商务及高校关系高级经理,但仍然对国内软件测试水平的落后深有感触。

  国内很多企业还处在探索阶段,小企业的运作方式造成其主要精力是要尽快完成初始资本积累。有些企业也了解软件测试的重要性,很努力、很认真的在学,但因为很多原因而学不到精髓,不知道如何去做。于是只能局限于书本上学来的简单的黑盒、白盒测试而已。很多人知道有压力测试和性能测试,但针对产品具体如何去做就不清楚了。

  陈宏刚表示,重视测试首先需要有开放性的软件文化,而在很多公司中,测试工程师只是绝对服从的听命角色,没有开发他们的积极性和创造性。一些管理人员对软件开发的流程管理经验不足,仍然用传统企业的方法进行管理,再加上对软件质量的控制理解不对,认为编完程序经过简单的程序员自己测试就可以使用了,而没有认识到软件测试是控制质量最好的方法。

  不过,国内还是有一些大型公司和专业公司已经在软件测试方面走上正规。1994年开始接包IBM软件测试项目,1999年软件测试成为公司主体软件外包业务之一的和腾软件就是其中之一。因为客户就是IBM这样的大型软件公司,和腾软件高级副总裁刘忠表示,它们在软件测试管理上,经同国外的公司相差不大,同时也研究和应用了多种软件测试技术。

  软件测试工程师

  一提到软件测试工程师,很多人就会想到那些反复使用软件,试图在频繁操作中寻找到错误发生的低层次人员或者软件用户。其实这是一种错误的概念,软件测试早已超越了用户使用来发现Bug的基本测试阶段。

  陈宏刚介绍说,微软的软件测试工程师分为三种:测试执行者(Basic SoftwareTester)、测试工具软件开发工程师(Software Development Engineer inTest)和高级软件测试工程师(Ad_hoc Tester)

  测试执行者负责理解产品的功能要求,然后根据测试规范和测试案例对其进行测试,检查软件有没有错误,决定软件是否具有稳定性,属于最低级的执行角色。

  测试工具软件开发工程师负责写测试工具代码,并利用测试工具对软件进行测试;或者开发测试工具为软件测试工程师服务。产品开发后的性能测试、提交测试等过程,都有可能要用到开发的测试工具。对技术要求最强的是这些人,因为它们要具备写程序的技术。“因为不同产品的特性不一样,对测试工具要求也是不同的,就像Windows的测试工具不能用于Office,office的也不能用于SQLserver,微软很多测试工程师就是负责专门为某个产品写测试程序的。”

  而Ad_hocTestet属于比较有经验,自己会找方向并做的很好的测试工程师,这要求具有很强的创造性。刚进入微软时,老板也是只给陈宏刚一个操作流程,每天就按照这个规程去做,几天下来,一个Bug都没有发现。陈宏刚也很沮丧,觉得这样挺对不起公司,后来自己问自己:为什么非要这样做!于是换了其他的方法试试,令他吃惊的是,一下就找到很多严重的Bug,当时也不敢声张。有一天,他找到10多个非常严重的Bug,开发经理一下就惊呆了,怒冲冲的跑到陈宏刚面前问:“你是不是改变了测试方式和测试步骤?”陈宏刚有些吓住,说道:“可能改变了一点。”对方说:“我非常生气,但我不是生你的气,而是因为以前测试人员水平太差,或者以前的测试方面有问题,软件中有些Bug存在了半年甚至一年,但直到现在才发现,现在修补这些错误要困难很多!”后来陈宏刚得到了老板的赞许,可以按照自己的想法去做测试。对此,陈宏刚感受颇深:“一方面我体会到了微软非常鼓励创造的文化,同时也感到只遵守教条不是好的测试人员,就和用户一样了。做软件测试工程师同样需要开拓和创造性。”

  在开发管理上,测试不应该归属于项目管理,也不应该归属开发人员。这三个部门应该是并驾齐驱,相互协作,测试工程师最终决定产品是否能够发布。

  软件测试工程师的素质

  因为软件测试仍然处在发展阶段,还没有上升到理论层次。对人员的评测,包括微软在内,都还没有一个统一标准,因此评定软件测试工程师只能根据工作实践进行自然淘汰。

  软件测试对逻辑思维、学习能力、反应要求很高,是否有严密的思维和逆向思维也非常重要。陈宏刚介绍说,在五六个人的测试小组时,一半以上的Bug都是他找到的。他认为这同自己数学专业的背景关系密切,数学中有逻辑思维的培训,要善于找出来各方面的因素。比如要证明一个定理,各个方面都考虑到,一个条件不满足就无法证明;但如果证明其不成立,最常用的就是找到一个反例,只要有一点证明不成立就可以了,软件测试也是找这一点。

  做测试还要考虑到所有出错的可能性,还要做一些不是按常规做的、非常奇怪的事。除了漏洞检测,测试还应该考虑性能问题,也就是要保证软件运行得很好,没有内存泄漏,不会出现运行越来越慢的情况;在不同的使用环境下,考虑软件的兼容性同样重要。软件测试同产品的规模也有很大的关系,因为软件的bug往往出在大型软件的连接处。

  做软件测试工程师需要对软件抱有怀疑态度。这是因为开发人员喜欢想当然,总是找一些有利于自己程序执行的数据,有些开发人员甚至认为不利于程序执行的数据是对代码的玷污和亵渎。而软件测试却要策略性的准备各种数据,从每个细节上设计不同的应用场景,不去想当然的假定任何一个数据是可行的。

  在职业素质和交际方面方面,并不是测试工程师爱挑别人毛病才好,反而这个工作要求很强的沟通能力。经常的和开发人员进行沟通,说话办事要很得当,不能指责别人,否则会事倍功半。性格随和才能和开发人员顺畅的沟通,对人和对事是完全不同的两个问题。

  如何培养优秀的软件测试工程师

  朗川软件测试工程师张建阳从北大力学系毕业之后,曾开发流体力学分析软件,软件缺少测试而产生的问题给她留下了很深的印象。后来去大唐电信做UIM(统一消息管理系统),她发现尽管公司为了鼓励员工找bug采取了很多奖励方法,但还是很少人愿意去做系统测试。而张建阳却从那时查阅翻译了很多国内外的资料,对软件测试产生了浓厚的兴趣。

  像张建阳这样在工作中自己定位在软件测试领域的开发人员并不多见,因为程序员更愿意去做开发而不是测试,从大环境上,测试人员收入水平低也是原因之一。而在微软,测试人员和开发人员的工资水平是相同的。

  如何改变这种现状呢?有人说可以可以派人去先进的国外软件企业学习,但这种方式因为牵涉到商业秘密,可操作性不大。陈宏刚博士认为更好的方法是引进人才,把在国外大型软件公司工作过、有经验的人才引进来,甚至要高薪聘请。他表示,这不仅仅是一个人的问题,关键是能够把整个软件测试的水准提高一个层次。

  引进人才只是开始,更重要的是培养一批软件测试人才。软件开发的教育培训都是比较正规的,各个学校也都设有专业,但软件测试还没有正规的专业毕业生,而且没有评判的标准。陈宏刚博士给很多软件学院建议,开设四方面的软件测试专业基础课:软件测试基础、软件测试开发、高级软件测试案例和行业软件特色测试方法。国内现在已经有了一些软件测试基础的教材,但其他的教材还没有。高级软件测试案例主要是大型软件测试案例,大型软件出现的问题具有很强的代表性。而行业特色软件测试的课程可以开阔学生的视野。陈博士介绍说,在国外,也是极少的高等院校开设测试专业,但可以借鉴民间的培训机构课程。在有一批专业的测试人才出现之后,人们会认识到他们的重要性。

  如果你已经开始从事软件测试工作,千万不要认为软件测试没有什么发展的潜力和前途。刘忠从1995年接下IBM的OS2汉化版本的测试开始到现在,他一直工作在软件测试领域,并升到了公司高级副总裁的位置。和腾软件也培养了一批测试工程师,它们从对测试职业将信将疑到明确自己的测试方面的职业目标。刘忠介绍说:“很多人开始做测试执行工作时会说很麻烦、很枯燥,只是一味的埋怨,而不是主动的去学习,他没有看到软件测试背后所隐藏的知识。因为学习可以做这些工作,不学习也可以做这些工作,但质量是不同的。有些人自学和请教了很多测试技术和管理方面的知识,公司自然就会在下个项目中去培养他。”

  因此对于一个新手,要在各方面培养自己的能力。首先是要理解各种测试流程,并在理解的基础上转化为自己的知识,以后遇到相似的问题能自己去解决。在测试技能上,要知道测试有那些手段,比如压力测试有哪些方法,哪些工具可以辅助做测试。从专业技能上,面向不同的技术方向,像操作系统、网络、通信等都要从专业上深入了解。这三方面要同步去成长。

  软件测试工程师未来的发展

  从事软件测试有没有前途,未来的职业发展方向怎样呢?

  陈宏刚博士表示,软件测试工程师在微软的发展有几种途径:一种走技术路线,成长为高级软件测试工程师,这时他能够独立测试很多软件,再向上可以成为软件测试架构设计师。第二种就是向管理方向发展,从测试工程师到组长(Lead),再到项目经理(Manager),到更高的职位。第三种可以换职业,做项目管理,做开发人员都可以,很多测试工具软件开发工程师在写测试软件的过程中,因为开发方面积累了经验,同时对软件产品本身产生了自己的看法,很容易转去做产品编程。

  陈宏刚博士现在还带着一个测试小组,两个清华软件学院的学生,一个南开的专门做软件测试的博士生,一个北邮的学生,他们负责总部一个产品的测试。陈博士表示,在自己简单的讲讲思路,共同探讨之后,他们一星期就找出了70多个Bug,也感觉学了很多知识,并表示以后专注于软件测试专业,因为他们感觉软件测试真的是一门很深的学科,有很多可以研究的课题。其实微软的测试人员很多也都是硕士、博士,他们同样在做创造性的工作,保证着程序质量,推动着软件的进步。

  软件测试是正在快速发展,充满挑战的领域。尽管现在单机版桌面软件的测试已经成熟了很多,但对于网络时代的到临,包括微软在内的公司对基于网络的测试也没有一套完整的体系,也是处于探索中,网络中被攻击的可能性太大,这就是为什么黑客在网络上能兴风作浪的原因。网络测试是一个新环境,而且是很大的挑战。

  软件测试未来的发展空间很大,软件测试工程师的职业之路同样充满希望。

本文来源:https://jianli.jxxyjl.com/zhichangdapin/35127.html

  • 中秋国庆加班工资怎么算|国庆加班,工资怎么算?

    转眼又到国庆长假。“法定”假期,“法定”休息,任何人不得侵犯。 当然,每逢长假,总得有人“牺牲小家为大家”。加班并不要紧,但特别的付出得有特别的回报。一句话,节日加班,钱要翻番。 可实际情况却不容乐观。《劳动法》早就颁布,但规规矩矩执行的公司又有多少家?清清楚楚知晓的员工又有多少个?要不...

    发布于:2025-09-28

    详细阅读
  • 【职场的政治头脑】职场上需要政治吗?

    职场中离不开“政治”。讨厌和回避职场中的“政治”,其结果往往是自己在职场上以失败而告终。直面职场中的“政治”、学会运用政治,你会如鱼得水,职场上会迅速取得成功。 你试试问问周围朋友:“你在工作中会运用政治手段解决升职加薪等问题吗?”十有八九你会遭受到白眼。“政治”似乎与卑鄙、肮脏、见不得阳光划上了...

    发布于:2025-09-28

    详细阅读
  • [如何听懂他人的话外音]听懂老板的话外音

    出镜人物:北京某合资企业人力资源部主管,五年工作经历。 有一次老板和我谈话,他先是夸了我的业绩不错,认为我可以担当更重的职责,然而又说最近行业不景气,利润比去年下滑得厉害,最后就问我如果我做部门主管的话会不会考虑裁员。当时我愣了一下,马上就第一感觉说不会,因为很多同事都一起出生入死的。记得当...

    发布于:2025-09-28

    详细阅读
  • [职场的政治头脑]职场上需要政治吗?

    职场中离不开“政治”。讨厌和回避职场中的“政治”,其结果往往是自己在职场上以失败而告终。直面职场中的“政治”、学会运用政治,你会如鱼得水,职场上会迅速取得成功。 你试试问问周围朋友:“你在工作中会运用政治手段解决升职加薪等问题吗?”十有八九你会遭受到白眼。“政治”似乎与卑鄙、肮脏、见不得阳光划上了...

    发布于:2025-09-28

    详细阅读
  • [职场新人必备的礼仪细节]新人需要必备的4种职场软实力

    那关于新人需要必备的职场软实力有哪些呢?下面是小编为你整理的新人需要必备的一些职场软实力,希望对你有帮助。新人职场需要必备的4种软实力  软实力1:“自动自发”的职业心态  自动自发的意思就是对工作保持热情,了解工作是为了自己高兴而不是为了让老板高兴。认识到员工与企业是相...

    发布于:2024-02-15

    详细阅读
  • 不能和朋友合伙开公司|要不要和朋友合伙开公司

    导语:朋友是你的好朋友,可是不一定是你的好合伙人,要不要跟朋友一起开公司,首先要回答下面的12道问题。  1 时间表是什么?  如果你朋友的商业计划是经过深思熟虑的,那么他将对所能筹到的资金有个大概的预估。确保你们拥有同一个清晰的愿景和期待。  —Matt Ehrlichman,...

    发布于:2024-02-15

    详细阅读
  • 教师职业倦怠产生的原因_产生职业倦怠症的原因是什么

    一个人长期从事某种职业,在日复一日重复机械的作业中,渐渐会产生一种疲惫、困乏,甚至厌倦的心理,在工作中难以提起兴致,打不起精神,只是依仗着一种惯性来工作,这是职业倦怠症。因此,加拿大着名心理大师克丽丝汀-马斯勒将职业倦怠症患者称之为“企业睡人”。据调查,人们产生职业倦怠的...

    发布于:2024-02-15

    详细阅读
  • [学佛的人如何在婚姻中维护自己的利益]学佛的人如何在职场生存

    职场有什么好的佛教理论呢?下面是小编为大家带来的学佛的人在职场生存的方法,相信对你会有帮助的。  学佛的人在职场生存的方法:工作的价值  现代人以“经济”为前提,追求“名”、“利”与“权势”。在商场上...

    发布于:2024-02-15

    详细阅读
  • [员工晋升自我评价范文优秀模板]员工晋升的自我评价范文模板

    自我评价写得好,能帮助员工晋升申请者为公司的发展创造价值,以下是小编要与大家分享的员工晋升的自我评价范文模板,供大家参考!员工晋升的自我评价范文模板(一)  我叫xx,到xx单位工作已经有三个月了,在过去的工作三个月里,有成功,有失败,有欢乐,也有苦恼。在领导及关怀与指导下,在各位同事的鼎力支持...

    发布于:2024-02-15

    详细阅读
  • 如何去适应职场生活_如何适应未来职场生活快速

    未来职场需要我们花心思去慢慢适应,才能习惯这种职场生活。下面是由小编整理而成的适应未来职场的方法,谢谢你的阅读。适应未来职场的方法:心理准备  就业在即,许多大学生很早已开始“备战”,但不少大学生还是忽略了求职前最重要的一项准备:心理准备。当前大学生就业的心理问题主要表现...

    发布于:2024-02-15

    详细阅读

Copyright @ 2011-2019 求职简历网 All Rights Reserved. 版权所有

免责声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。

 站长统计