专栏首页新梦想软件测试软件测试员一定需要懂编程代码吗?
原创

软件测试员一定需要懂编程代码吗?

软件测试人员需要懂代码吗?如果软件测试人员会代码,那还有软件开发人员的事吗?既能测试又能敲代码的人是不是很牛?

不管是外行人还是内行人,对一份与自己无关的职业的认识往往缺乏基本的认知,比如今天要说的软件测试。很多人都会对软件测试这个岗位存在一个疑问?软件测试员一定需要懂编程代码?在回答这个问题前,先全面的了解下软件测试不同时期的各种技能吧。

软件测试会因软件产品的需求、行业的不同而所有不同,而优秀的测试工程师在整个产品的测试过程中扮演着极其重要的角色。一个优秀的测试工程师应该具备:1)丰富的行业知识 2)优秀的逻辑推理能力 3)良好的编程技能。

也即是说,不同时间段,做不同的事情。

一、菜鸟新人--初级测试工程师

初入软件测试行业,要成为一名合格的的软件测试工程师,需要学习的东西还是很多的。

1)软件测试理论基础。

2)测试用例设计、测试功能覆盖、软件测试项目实战应用。

3)对业务的精准把握 、培养对bug初步处理和分析。

4)在长期的测试工作中,要培养敏锐的bug嗅觉。

5)良好的沟通表达能力。如果你连一个bug都表达不清楚,那就尴尬了。如果你不能与开发好好聊天,那也尴尬了。

但此阶段,主要是功能测试为主,像用户一样去手工操作系统,模拟用户的使用场景 。

所以不需要任何的编程能力,你都是可以胜任的。因此,软件测试的入门并不难。

二、功能测试、测试工具 --初级测试工程师(入职已有一段时间)

随着测试时间的增加,就需要掌握更多的东西来扩充自己的技术能力了。

1)数据库操作:mysql、oracle等。

2)linux操作、环境搭建。

3)各种测试工具:抓包fiddler,wireshark。

4)从架构层了解被测系统、http通信协议、接口测试及其工具postman、soupui、jmeter等。

5)app的专项测试、兼容性测试、易用性测试。

在这个阶段,会有一部分人成为小组长、小领导。主要工作内容就是分配组内的测试任务、把握和反馈任务进展、完成测试工作。

在一些特殊的行业(比如医疗),可以逐渐形成业务专家。

在此阶段对编程能力也没有要求。

三、自动化/性能/安全(必须会编程) --中高级测试工程师

具备测试能力与代码能力,提升测试效率与软件质量。

以下以自动化测试为例来说明。

1)选一门编程语言学习:java、python、ruby等。

2)了解自动化测试、自动化测试工具、web/app/接口/pc端自动化基础。

3)框架思想、项目实践与流程。

在功能测试岗位中做了几年时间之后,会开始焦虑。

在工作中,感受到了成长的限制。除了业务越来越熟之外,工作就是点点点,其它方面没有成长。

想跳槽想涨薪,但是很有挫败和无力感,因为全身上下价值就在这里。

想在工作的过程中自学提升,迈向高薪的自动化测试、性能 测试、安全测试等。

当然自动化测试工具也可以实现自动化,但是有好与坏的区别。

第一道门坎就是编程!

另外,想要成为优秀的安全测试与性能测试工程师,则不仅仅是会编程还需要有更多的计算机相关知识。

四、测试开发/性能、安全测试专家(必须会编程) --高级测试工程师

测试开发,具备测试能力与代码能力,提升测试效率与软件质量。又可以做开发,又可以做测试。

要求比较强的开发能力,深入代码层。一般不直接参加测试工作。

1、对测试框架、测试工具的二次开发,更好的符合公司产品的测试要求。

2、开展单元测试或者协助开发开展单元测试,从开发阶段就开始把控产品代码质量。在后续迭代过程中快速挖掘问题。

3、开发测试工具和平台,为测试团队提高测试效率,各种测试的简化、测试结果的量化。比如性能测试平台、接口测试平台等。

五、测试主管、经理、总监--职业发展和晋升阶段

既要强大的测试和编程能力,也要有足够的管理和交际能力。如果仅仅只有足够的测试能力,开发团队你无法震的住。

新梦想总结

如果不想被行业淘汰,想让自己的职业能力更上一层楼,那么编程对中高级技术测试人员而言则是必须要会的!在软件测试职业生涯里,编程能力将会成为你职场的助力,也会伴随你的整个职业生涯。建议你学习几种编程技术,至少学习一种脚本语言,比如Vb、Java、Ruby/Perl等,至少一种通用的编程语言,比如Java、C++、C等。追求更高效的软件测试是一个测试人员不断提高自己水平的动力之一,编程能力对测试工程师很重要,但并不是核心的能力。会编程是为了让我们测试更高效的发现bug,这才是测试人员最核心的能力。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 测试Leader应该做哪些事?

    有句话怎么说的来着?不想当将军的士兵不是好士兵,同理可得,不想当领导的软测工程师不是好程序员。但测试Leader也不是人人都能当的,今天就让我们一起来了解一下,...

    新梦想IT职业教育
  • 关于软件测试未来发展趋势分析与总结

    中国近几年软件业迎来了一个超高速发展期,其中软件测试发展也成为业内关注的话题,越来越多的高校毕业生投入到软件测试行列中,这表明软件测试有可能会成为下一个IT行业...

    新梦想IT职业教育
  • 总结49种软件测试方法,你知道几个?

    β测试,英文是Beta testing。又称Beta测试,用户验收测试(UAT)。

    新梦想IT职业教育
  • 自动化软件测试与人工测试比较

     既然现在有了自动化测试,甚至现在许多团队在使用人工智能的方法,逐渐让机器来取代人的测试。那么作为测试工程师的人未来会不会消失?这是一个摆在许多人面前的一个严肃...

    小老鼠
  • 【荐】Web Application Penetration Testing中文译作

    (英文原版地址:https://www.exploit-db.com/docs/english/44319-web-application-security-t...

    ChaMd5安全团队
  • 软件测试小白必读

    软件测试作为一个行业繁荣发展,也只是近四五年的事情,相关培训也是雨后春笋,自2011年入行,看过太多人转行,看过一些人带着未知想入行,真真是围城里的人想出去,围...

    互联网金融打杂
  • 代码 - 软件测试扎心的痛

    概述 软件测试工程师通常会面临着一个普遍的问题:软件测试工程师工作中需要写代码吗? 在理清这个问题前,我们有必要先全面的了解下软件测试的各种角色。 一般而言软件...

    苦叶子
  • 代码 - 软件测试扎心的痛

    概述 软件测试工程师通常会面临着一个普遍的问题:软件测试工程师工作中需要写代码吗? 在理清这个问题前,我们有必要先全面的了解下软件测试的各种角色。 一般而言软件...

    苦叶子
  • 软件测试人员掌握多少代码能力才够

    概述 软件测试工程师通常会面临着一个普遍的问题:软件测试工程师工作中需要写代码吗? 在理清这个问题前,我们有必要先全面的了解下软件测试的各种角色。 一般而言软件...

    苦叶子
  • 代码 - 软件测试扎心的痛

    概述 软件测试工程师通常会面临着一个普遍的问题:软件测试工程师工作中需要写代码吗? 在理清这个问题前,我们有必要先全面的了解下软件测试的各种角色。 一般而言软件...

    苦叶子

扫码关注云+社区

领取腾讯云代金券