测试人员需要编写代码吗?

2024-10-20   出处: guru99  作/译者:Thomas Hamilton/Ares

一个软件测试领域的新人经常会问的一个问题是……测试人员需要编写代码吗??

在回答这个问题之前,我们需要对软件测试的各种角色有一个全面的了解。

软件质量保证(QA)通常分为两类:

  1. 质量分析师(Quality Analyst):QA负责测试验证系统的功能和完整性。QA仅在开发阶段之后验证软件。QA的角色不如开发人员那样技术性强,可能不需要编码。

  2. 测试中的软件设计工程师(SDET,Software Design Engineer in Test):另一方面,SDET了解产品的内部工作原理。他们了解数据库概念、编程语言等,并参与产品设计、数据设计和用户界面设计。SDET需要在开发阶段工作,并需要掌握编码知识。因此,SDET的角色更具挑战性,它结合了开发人员和测试人员的工作。自动化测试人员(使用QTP、Selenium等工具)也可以归类为SDET。

因此,根据测试人员的角色,可以确定测试人员是否需要掌握编码知识吗?让我们来回答一些与之相关的问题。

在本文中,我们将了解以下内容:

  • 成为一名优秀的测试人员需要具备哪些技能组合?
  • 测试人员应该了解什么?
  • 成为一名优秀的测试人员需要多少编码知识?

优秀测试人员的特质

软件测试方法因软件产品的需求和规格而不同,一名优秀的QA或软件测试人员在完成产品测试过程中扮演着重要角色。

优秀测试人员的特质包括:

  • 良好的业务领域知识
  • 良好的逻辑思维能力
  • 良好的编程技能知识

测试人员需要多少编码知识

编写代码和调试是开发人员的工作。

那么问题就来了,为什么测试人员需要了解编码知识?

让我们来看看为什么了解编码对测试人员变得必要的几个原因:

软件测试基本上包括两种方法:手动测试和自动化测试。在高级别上,测试可以分为白盒测试、黑盒测试或灰盒测试。不同的测试技术需要测试人员具备不同的技能组合。

  • 在进行黑盒测试时,测试人员不需要了解编码知识。测试人员只需通过输入数据来测试软件,然后检查输出结果是否满足预期。
  • 白盒测试或代码驱动测试则需要了解代码知识。了解各种编程概念,如C、C#、C++、RDBMS概念等,可能会有所帮助。
  • 当测试人员进行自动化测试或白盒测试时,他们需要良好的编码知识。这是因为自动化测试涉及语句覆盖率、代码覆盖率、圈复杂度等概念,所有这些都需要良好的编程技能和数据库知识。

  • SQL(结构化查询语言)- 有时测试需要进行数据库验证。因此,测试人员需要掌握SQL命令的基本知识,如“select”、“create”、“update”等。

  • SQL注入 - “SQL注入”是通过插入不必要的命令来进行数据库黑客攻击的一种技术。良好的JavaScript和SQL命令知识有助于测试人员发现此类软件安全威胁。
  • 敏捷测试 - 在敏捷测试中,整个团队都对软件的质量负责。在整个敏捷过程中,测试人员将与一个或多个程序员合作编写测试。因此,为了创建可自动化的测试,测试人员了解代码是至关重要的。

对软件QA分析师的一些重要建议

  • 掌握手动测试、JavaScript等脚本语言的知识将为你的测试技能增添光彩。
  • 作为一名测试人员,你应该建立对Java、VBScript等编程语言的基础知识。这不是必须的,但它是必要的。了解SQL概念、DBMS概念对你来说是一种很好的实践。

除了这些之外,还有一些一般性的建议可以帮助软件QA分析师:

  • 沟通技巧
  • 分析思维
  • 资质

因此,在软件测试中了解编码对QA分析师或测试人员的整个职业生涯都有很大帮助。

总结

软件QA通常分为两类:

  • QA测试员:不需要编码知识
  • SDET(软件开发测试工程师):需要编码知识

优秀测试员的特质包括:

  1. 良好的领域知识
  2. 良好的逻辑思维能力
  3. 良好的编程技能知识

当测试人员从事自动化测试时,他们需要良好的编码知识。


声明:本文为本站编辑转载,文章版权归原作者所有。文章内容为作者个人观点,本站只提供转载参考(依行业惯例严格标明出处和作译者),目的在于传递更多专业信息,普惠测试相关从业者,开源分享,推动行业交流和进步。 如涉及作品内容、版权和其它问题,请原作者及时与本站联系(QQ:1017718740),我们将第一时间进行处理。本站拥有对此声明的最终解释权!欢迎大家通过新浪微博(@测试窝)或微信公众号(测试窝)关注我们,与我们的编辑和其他窝友交流。
155° /1551 人阅读/0 条评论 发表评论

登录 后发表评论
最新文章