怎样成为好的测试工程师?

如题所述

如何做一个合格的且高技能的软件测试工程师?

生存必备——“2懂4能”
懂技术
喜妹这里说是“懂”,而不是“精”,你又不是跟开发工程师抢饭碗(起码暂时不是)。懂开发技术或者编程语言最基础的保证,就是你能拥有话语权,不被开发忽悠,也能更好的与他们沟通。
你也不要认为设计能力就是产品经理和设计师的事情,如果你能懂点设计,就可以多提出一些自己的意见,促进项目完成更好的设计,不仅可以节省一些整个团队的劳动力和项目开发周期,在一定程度上也能节省你自己后期的工作量。

懂业务
如果软件测试工程师对软件本身的业务都不明确,根本没办法进行测试。在明确了整体业务流程后,软件业务模块就会比较清晰了,每个模块之间有什么连带关系,业务逻辑是怎样的,需要哪些业务数据支撑,总共有多少个模块需要进行测试,整体的测试环境如何搭建出来,性能目标和功能目标是什么?
这么多问题看似很复杂繁琐,但这样一层一层的进行分析思考,你会对业务的理解更充分,这样就越能理解到最终的用户需求,越能找出更深入、更关键、更隐蔽的bug,那你的工作反而会更加轻松高效。

执行能力
任何公司任何岗位其实都要求都喜欢员工有较强的执行力,而这执行能力主要体现在以下三个方面:
一是立即去做,体现的是对待工作的态度,分配下来的工作任务,需要你尽可能快的去做;
二是高质量完成,体现的是你的工作能力,正确领会工作的意图,认真仔细的将事情做对、做好;
三是及时反馈,对于安排给你的任务,不管是及时高质量的完成还是经过努力后仍然无法达到,都一定要及时反馈。尤其是对于自己不能解决的更要及时上报,不要让问题压在自己手里,影响事情解决的时效性。

沟通能力
测试工程师往往在项目中起到承上启下的作用,一方面需要对接产品经理和项目经理,确保需求的正确实现和项目整体质量的达标;另一方面还要和开发工程师不断地沟通、协调、推动,确保bug的及时修复与验证。
与产品经理沟通时,尤其是在提意见时,测试工程师要站在用户的角度去思考并说明想法,而不要主观认为不好就要求产品修改。(千万不要“我不要你觉得,我要我觉得”)
测试跟开发的沟通大概是最多且最需要花精力的了,跟开发工程师提bug的时候要简洁明了、清晰易懂。当发现严重缺陷时,不要一味地指责他们,要站在他们的角度共同思考解决问题的办法,与团队共进退。

缺陷洞察能力
测试工程师至少要具备发现一般缺陷的能力,比如软件主流程能不能跑通、功能是否全面,这是最基本的、入门级的能力呀,同志们。
在软件的测试过程中,发现了一个bug后,要想到这个bug可能会引发其他地方出现问题,并去检查且找出来。可能会有一些缺陷藏得比较深,它需要某些特定的条件的情况下才会出现的问题,这就考验你的隐患问题的发现能力了。
如果你不仅能找到bug,还知道这个bug产生的原因,这样的测试工程师是相当优秀的,以后跟开发提bug的方式也就自然不一样了。

逻辑思考能力
进行逻辑分析判断时,测试工程师一定要先明确项目的业务流程逻辑,分析逻辑的正确性和可行性,哪些是正向的,哪些是逆向的,你需要面面俱到的考虑全面。
你也不要仅仅只是站在测试工程师的角度上进行测试,要更多的站在客观角度和用户的角度去思考,注重用户体验。

其实归根结底就是一句话:测试工程师的核心工作就是保障软件的质量。
想成为一名优秀的软件测试工程师,对于测试工作的核心要想清楚,并且具备一些在职场上生存必备的能力,把握好重心才能少做无用功,成长得更快更扎实。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2019-08-25

    起码有三年以上的软件开发经验

    现在许多软件企业招收一些刚刚毕业的大学生或者非计算机专业的人员作为自己公司软件测试工程师,这是非常错误的,也是对软件测试不负责任的表现。虽然他们可以发现软件中的一些错误,但是对于软件中的一些关键,致命,危险的错误他们是很难发现的。大家都知道,软件工程中有个模型叫瀑布模型,这是最基本的软件模型,这个模型又叫碗状模型,因为开发位于碗的最底部,左上方依次为建模,需求分析,设计;右上方依次为测试,部署,维护。这就是说明软件开发是一切软件活动的基础,同时也是软件测试的基础。一个人只有经历过一定年限的软件开发工作,才可以积累丰富的经验,知道在软件中哪些地方容易出错而那些地方不容易,这给以后的软件测试工作带来非常宝贵的经验。

2.有逆向思维的能力

软件测试开发是顺向思维,而测试是逆向思维,老要找一些稀奇古怪的思路去操作软件。软件的使用者千差万别,软件在使用过程中遇到的各种现象也是千差万别的,所以要求软件测试工程师需要具有一些逆向思维的能力,想别人所不想,测别人所不测,这样才可以找到更多的软件中的错误。这是作为一名优秀的软件测试工程师最基本的素质。

3.善于同软件开发人员沟通

沟通是当今软件项目中需要掌握的最关键技术之一。软件测试人员要善于同软件开发人员沟通,软件测试人员与开发人员搞好关系,使测试人员不成为开发人员的眼中钉,这对于提高整个软件项目质量是十分重要的。

4.善于同领导沟通

测试人员往往是领导的眼和耳,领导根据测试人员的测试结果可以了解公司的产品质量,从而调整其他的工作。领导工作一般比较繁忙,所以作为一名优秀的测试人员要学会把测试结果进行总结,最好以图表的形势给领导看。

5.掌握一些自动化测试工具

测试工作往往是比较繁琐,枯燥无味的工作,测试人员长期处于重复的手工工作,会降低测试效率,并且对于测试质量也往往是不利的;况且许多测试不使用测试工具是不可以进行的,比如性能测试,压力测试等等。目前市场上有许多测试工具供你使用,你可以根据自己的需要选择一些测试工具来辅助你的测试。但是要记住一点,不是说有了测试工具就不要人工测试了,测试工具不是万能的。

6.善于学习的能力

软件测试技术随着时间的变化也在做一些提高和改进,作为一名优秀的测试人员要善于利用书籍,网站,论坛,交流等各种途径不断提高自己的软件测试水平。

测试工程师,软件质量的把关者,工作起点高,发展空间大。我国的软件测试职业还处于一个发展的阶段,所以测试工程师具有较大发展前景。

目前传统的软件行业还是以软件测试工程师为主,但是在新兴的互联网行业大多还是以QA来命名这个职位,也就是质量保证。

本回答被网友采纳
相似回答