SDET,也称为测试中的软件开发工程师,是软件测试和质量保证领域的工做角色。该术语最初由微软和谷歌使用,旨在用自动化取代普通和重复的手动测试任务。面试
多年来,愈来愈多的公司正在招聘SDET,由于它是敏捷和DevOps中的关键角色。可是,这是一个充满挑战的角色。编程
技术变化很是快,测试人员须要学到不少东西才能保持领先。安全
这篇文章讨论了SDET的做用以及为何难以找到独角兽SDET。编程语言
SDET是一个技术软件测试人员,专一于开发自动化测试脚本。工具
一般,他们是敏捷团队的一员,与开发人员一块儿工做,帮助自动化用户故事中的接受标准。性能
除了参与典型的QA活动外,他们还能够编写自动集成测试,API测试和/或UI自动化测试。单元测试
此外,SDET能够帮助审查开发人员编写的单元测试。学习
在每一个产品中,都有一些核心功能必须在每一个产品版本上运行。这意味着在每一个sprint中,必须测试新功能和现有功能。测试
敏捷开发是快节奏的。经过短冲刺(一般为2周),测试人员没有时间手动测试全部东西。网站
当团队中的测试人员没有编写自动检查所需的技能时,全部测试都必须手动完成。
最终,测试成为软件开发和发布的瓶颈,由于完成测试须要更长的时间。
所以,在敏捷团队中招聘和放置SDET能够经过自动化大部分手动测试和任务来减轻负担。
那么,为何要找到并招募优秀的SDET这么难呢?
多年来,我采访的大多数所谓的SDET要么缺少必要的技术技能,要么不理解质量保证和测试原则。
他们并不彻底理解SDET在团队中的做用的主要缘由。大多数人都认为他们所要作的就是自动化验收标准。让咱们明确一点,SDET不是自动化工程师。
在测试能力和技术技能之间取得适当的平衡是关键。
一个伟大的SDET是一个贸易软件测试人员,对软件质量充满热情,同时具备技术娴熟,并拥有正确的技术技能组合。
在面试SDET时,我老是寻找QA心态和技术技能。**
优秀SDET的概况是什么样的?SDET应该具有哪些技能?
如今,咱们中的一些人据说过全栈开发人员,但咱们能够拥有全栈测试人员吗?
在我看来,SDET应 至少具有如下技能和属性:
若是对软件测试、接口测试、自动化测试、性能测试、LR脚本开发、面试经验交流。感兴趣能够175317069,群内会有不按期的发放免费的资料连接,这些资料都是从各个技术网站搜集、整理出来的,若是你有好的学习资料能够私聊发我,我会注明出处以后分享给你们。
能够看出,SDET所指望的技能范围很是普遍。
我但愿成为SDET而且在QA新时代保持相关性的测试人员的建议是:
确保您在SDET配置文件中具有全部上述技能,但至少应:
首先,要了解软件测试的基础。
与开发人员保持一致并可以编写漂亮的代码很是好。但若是您缺少QA思惟模式,若是您没法提供足够的方案来深刻测试用户故事和功能,那么您就不会添加任何价值。你也能够更努力地工做并成为开发人员。
大多数现代Web应用程序都与API交互。
了解和理解HTTP体系结构以及Web的工做原理相当重要。若是您没法区分POST请求和GET请求,或者不知道如何解析JSON,那么如何有效地测试API?
投入时间学习Karate等API测试工具。
你不能称本身为SDET,若是你想作的就是自动化测试,而你所知道的就是Java和Selenium.