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

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
还在用Synchronized?Atomic你了解不?
前言 只有光头才能变强 之前已经写过多线程相关的文章了,有兴趣的同学可以去了解一下: https://github.com/ZhongFuCheng3y/3y/blob/master/src/thread.md 在阅读《阿里巴巴 Java开发手册》读后感时,还有未解决的问题: 如果是count++操作,使用如下类实现: AtomicInteger count = new AtomicInteger(); count.addAndGet(1);如果是 JDK8,推荐使用 LongAdder 对象,比 AtomicLong 性能更好(减少乐观锁的重试次数)。 之前在学习的时候也看过AtomicInteger类很多次了,一直没有去做相关的笔记。现在遇到问题了,于是就过来写写笔记,并希望在学习的过程中解决掉问题。 一、基础铺垫 首先我们来个例子: public class AtomicMain { public static void main(String[] args) throws InterruptedException { ExecutorService service = Exec...
- 下一篇
给萌新的Flexbox简易入门教程
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 【年末促销】葡萄城 2018 岁末福利火热放送中 原文出处:https://www.sitepoint.com/flexbox-css-flexible-box-layout/ 近几年,CSS领域出现了一些复杂的专用布局工具,用以代替原有的诸如使用表格、浮动和绝对定位之类的各种变通方案。Flexbox,或者说是弹性盒子布局模块(Flexible Box Layout Module)是这些新布局工具中的第一个,接着是CSS网格布局模块(CSS Grid Layout Module)。我们会在本文给出一个易于理解的flexbox入门介绍。 随着CSS网格布局的引入,你可能会问flexbox布局是否真的还有必要。虽然它们所能做的事情有一些重叠,但其各自在CSS布局中有着非常特别的目的。一般来说,flexbox在一维场景(比如,一串类似的元素)下有最佳应用,而网格是二维场景下理想的布局方案(例如整个页面的元素)。 即便如此,flexbox仍可以用于整个页面的布局,这样它能为那些还不支持网格布局的浏览器...
相关文章
文章评论
共有0条评论来说两句吧...