测开和测试的区别

提高自己的天花板

Posted by 叉叉敌 on June 7, 2020

SDET (Software Development Engineer in Test or Software Design Engineer in Test),代表测试中的软件开发工程师或测试中的软件设计工程师,这种角色起源于微软,目前许多组织都需要这样的 SDET 专业人员,他们可以参与应用程序的开发,也可以参与开发软件的测试。 另一方面,测试人员可以是不参与软件开发的人工测试人员或质量分析人员。 SDET 经常参与开发高质量、健壮和高性能的代码,这些代码在测试用例自动化或设计可用作测试工具的测试框架中很有用。 SDET 还审查了软件产品的设计和过程。

不同点

在高层次上,SDET 可以被视为软件开发人员和测试人员,但他将是测试阶段的一部分,而不是软件开发生命周期的开发阶段。 为了更好地理解 SDET 和 Tester 之间的差异,请阅读以下要点。

Apple

SDET 是具有高度开发和测试技能的熟练资源; 另一方面,测试人员参与手动或自动准备和执行测试用例。测试人员是编程技能有限的资源,他们更多地关注于黑盒或功能测试,而 SDETs 是具有良好编程技能的熟练资源,并且在测试自动化方面做测试人员(白盒测试)和开发人员的工作。

SDET 非常精通软件开发,他们可以参与测试自动化工具开发,并且可以将其用于通用用途。 测试人员不需要开发测试自动化工具,他们可以使用这些测试自动化工具来自动化他们的软件应用程序或项目所需的测试用例

通常在一个组织中可以看到,开发了 SDET 自动化测试框架的测试人员或质量分析人员被提升为新的角色,并可以参与软件应用程序或其他自动化测试框架的设计审查。

在一个全面的例子中,我们可以证明这一点,如果要进行 API 的测试,那么在没有编写任何代码行的情况下是不能完成的。 因此,这里的测试角色可以是 SDET。 然而,如果要测试需要黑盒测试的用户界面或 GUI,并且不需要编写任何代码行进行测试,那么这个测试角色可以是 STE (Software Test Engineer)。

预计 SDET 将承担更多的职责,比如性能测试、安全测试、自动生成测试数据、测试环境设置、开发测试自动化工具等。

与手工测试人员不同,SDET 需要具备领域知识,这样他们就可以参与设计测试用例。 测试员的所有职责都来自于 SDET。

有些组织,比如 Microsoft,并不区分测试人员的不同角色,并希望他们手动运行测试,以及编写测试自动化脚本或代码(如果需要)。 组织现在天强调测试人员学习至少一种编程语言,他们可以使用这种语言来工作在测试自动化工具上。 另外,Selenium、 FitNesse、 SAHI 等测试自动化工具也具有灵活性,可以用 Python、 Perl、 JAVA 等各种编程语言进行操作

SDET

SDET 的作用和职责:

SDET 是一名工程师: 他们知道许多编程语言,数据库概念,参与产品设计,数据设计和用户界面

能够编程的软件测试人员: : 应该知道如何构建和测试能够满足用户期望的产品。 为了对任何应用程序进行足够深入的测试,应该了解构建该应用程序或产品的代码。 测试从单元级开始,一直到功能级,包括验收和产品性能测试。 SDET 精通所有这些测试。 SDET 可以通过利用他们的编码技能来自动化验收测试

客户代言人: SDETs 的声音非常重要,因为他们知道产品的一切。 他们参与了所有级别的产品设计,与产品经理,产品开发团队和最终产品用户合作。 他们从整体上理解软件产品的需求,因此他们是最好的客户支持者

与 QA 或软件测试人员不同的角色: 质量分析师(QA)只在开发阶段结束后测试软件,而 SDETs 在开发阶段是活跃的,并且与开发人员肩并肩地工作以理解底层代码。 QA 角色不像工程师那样技术化。 另一方面,软件测试人员专注于软件开发生命周期的所有步骤,他们准备测试用例并执行这些测试用例以发现软件产品或应用程序中的缺陷,并确保高质量的软件产品发布。 这也是 SDET 工作职责的一部分

过程的重要性: 作为项目管理的一部分,SDET 处理最终用户或客户及其经验,他们已经具备了工程技能. 这一切都在一个工作的曝光和技能集使 SDETs 的心脏和大脑的软件过程

小结

SDET 不仅仅是一个测试者。 是一个集开发人员和测试人员于一身的团队,他们接触项目管理,交互和理解最终用户软件需求,知道产品或领域知识,参与产品或软件设计,知道如何编码和构建测试自动化工具。 这一切都在一种技能的集合,使 SDET 的作用非常独特,在目前的软件行业需求很高。