什么是测试开发工程师?

2023-11-17

什么是测试开发工程师?

测试开发工程师 (Software Development Engineer in Test,简称SDET)是指那些既可以称作是开发人员,同时也负责软件开发阶段和测试周期的测试工作的技术人员。一个专业的SDET更关注软件产品的可测性,稳健性和性能。他们还可以在生产软件的设计初期发挥推波助澜或审阅的作用。

由于这种混合性质,如今无论是中小企业还是大企业,都有很大的需求。

 

基于这种特殊的角色,让我们来看下具体体现

SDET是做啥的?

 通常情况下,测试工程师(STE)主要职责:他们是在系统界面上执行测试,发现bugs,针对发现的问题,在bug追踪管理工具上报告具体的失败的测试用例。而SDET更像是包揽了软件生命周期和测试生命周期的工作,他/她要做设计,制定计划,创建,线程化并且通过code review 或者自动化工具发现代码的问题。

一个SDET不仅可以考虑在应用程序代码可能失败的可能性,并适当地规划自己的测试结构,保证了产品的耐用性。

为什么需要测试开发?

自动化测试不能完全的替代手工测试,并且企业不乐意去雇佣两种测试人员,那么SDETs会成为他们的首选。这就预示着传统的纯手工测试转变为了通过技术实现产品的测试。所以SDET不仅是一个具备编程技能,也是一个可以创建测试框架和工具,帮助手工测试过程的测试人员。

SDET的角色和职责

  • SDET应该能够进行自动化测试和多应用平台的搭建,比如:web,Mobile和Desktop.

  • 根据技术支持部的反馈调查和重现客户遇到的问题。

  • 创建和管理BUG报告,并与团队进行沟通。

  • 能够创建不同的测试场景和验收测试。

  • SDET需要处理与合作伙伴的技术交流,了解客户的系统或API。

  • SDET更需要和部署团队一起协作,处理不同层面的系统问题。

  • SDET同时也应该具备搭建,维护和操作自动化框架的能力。

以上为测试开发工程师的必备(关键)技能。当然不同公司存在一定的差异。

技术和软技能

非技术能力:

 
 沟通能力
SDET必须具备良好的口头和书面沟通能力。测试材料像测试用例,测试计划,测试策略,BUG报告创建,应该易读和易于理解。
时间管理和组织能力
一个SDET的工作在代码发布期间尤为苛刻,必须有效地管理工作量,具有生产效率高,时间管理技能。
良好的工作态度
要想成为一名合格的SDET,良好的工作态度尤为重要。你必须能够在技术不断更新的情况下实时更新自己的技术技能。在这个过程中,态度起了一定的决定性。因此,在日常的工作中,对于任务应该持有有一种主人翁意识,而不是等待被分配。
热情
在IT专业,任何的成功带给你的喜悦,都离不开对该领域的热忱度。一个SDET应该有对测试,开发和设计的热情和求知欲和创造性。

技术技能:

 

  •  对编程语言有所了解,例如C#,.NET, Java等。

  • 理解面向对象程序设计

  • 有敏捷+DevOps流程管理方法论的工作经验

  • 熟知各种测试方式和测试相关的工具,例如MS Test,NUnit, TestNG, Selenium WebDriver等等。

  • 涉足行为驱动开发(BDD)。

  • 通过自动化工具能够找出现有项目代码中的瓶颈和阀值

  • 有一定的系统或服务端开发经验

  • 至少一年的测试经验或者说对各种开发工作感兴趣

日常工作

以一天为例,你大概是在忙碌于理解项目文档,编写和执行测试用例,输出测试结果和测试系统中的bugs.并且更像一个使设计团队,开发团队和其他的团队建立联系的枢纽。

事业进阶

在一个典型的CMMI 5级(致力于持续的流程改进)的公司,你的大概事业进阶如下所示,当然不同公司存在一定的差异。

新手->老司机(2,3年经验)->测试开发团队协调员(5-8年经验)或者是测试开发经理 (8年以上经验)

总结

因此,测试软件开发工程师的作用是非常可观的,以及具有挑战性,因为它力求以最大可能的质量交付软件。

 

译自:https://www.testbytes.net/blog/what-is-sdet/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是测试开发工程师? 的相关文章

  • MySQL中IF()、IFNULL()、NULLIF()、ISNULL()函数的使用

    在MySQL中可以使用IF IFNULL NULLIF ISNULL 函数进行流程的控制 1 IF 函数的使用 IF expr1 expr2 expr3 如果expr1的值为true 则返回expr2的值 如果expr1的值为false 则
  • react路由使用

    1 插件添加 cnpm install react router dom S 2 app js书写 import React Component from react 路由的2种形式 hash HashRouter H5的historyAp
  • mysql最大连接数修改

    当mysql出现 Too many connections 异常时 说明mysql数据库连接数过高 增加方法如下 如果可以登录 可以使用以下语句临时增加连接数 重启后失效 set GLOBAL max connections 1024 永久
  • zbrush插件布尔运算插件perfectbool安装方法

    zbrush插件直接复制粘贴到此路径的文件夹里 D Program Files Pixologic ZBrush 2020 1 3 ZStartup ZPlugs64 安装好了后 重启zb软件 即可在右侧面板最下面找到该插件了
  • MybatisPlus常用方法

    1 in QueryWrapper
  • 如何用matlab写一个电动汽车空调仿真模型

    首先 您可以研究电动汽车空调的工作原理 并了解其相关的物理参数 例如空调系统的热量转移 制冷剂流动以及空气循环等 然后 您可以使用 MATLAB 的 Simulink 模块开发模型 Simulink 是一个基于图形的仿真工具 可以方便地模拟
  • 用顺序表实现图书信息管理(增删改查)---c语言版

    顺序表 概念 用一组地址连续的存储单元依次存储线性表的数据元素 这种存储结构的线性表称为顺序表 特点 逻辑上相邻的数据元素 物理次序也是相邻的 实现 用结构体定义一本图书 typedef struct int id char name 20
  • zotero+坚果云同步

    在使用Zotero整理文献的时候 软件自带的云同步有300M的上限 但软件还提供了Webdav同步的设置选项 在国内的众多云盘中 坚果云是为数不多甚至说唯一的支持Webdav的云盘 设置同步的流程如下 在网页端的坚果云登录之后 点击右上角的
  • 微信小程序常用表单控件

    感谢慕课网七月老师课程 如何一次性获取所有表单控件的值并且提交到服务器上去呢 from表单提交 使用form把所有子元素包含进去
  • Vue.js 学习笔记

    vue基础 显示js界面传过来的数据 v bind 绑定提示信息 v if 条件语句 v for 绑定数组数据 v on 添加一个事件监听器 通过它可以调用Vue实例中定义的方法 v model 表单输入和应用状态之间的双向绑定 Vue c
  • torch.nn.Module模块简单介绍

    torch nn是专门为神经网络设计的模块化接口 nn Module是nn中十分重要的类 在介绍该模块前 我们先看下pytorch官方对该模块的注释 根据官方注释我们了解到Module类是所有神经网络模块的基类 Module可以以树形结构包
  • 项目失败的思考

    1 鲁莽的追求新的开发框架 2 没有让组员提前学习必要的知识 3 低估项目难度 没有想到潜在的需求和技术难点 4 项目没有时间性的计划 5 任务没有很好的分割 1 项目争取阶段 做好demo 2 项目准备阶段 选择开发框架 让组员了解相关知
  • 【Python】快速处理:ModuleNotFoundError: No module named 'pygame'

    一 问题 在安装Python3 7之后 再安装Pygame却不能导入该包 报错如下 ModuleNotFoundError No module named pygame 尝试了好多方法 都不行 最后找到解决办法了 主要原因是安装的版本或者路
  • RabbitMq 报错An unexpected connection driver error occured ....Socket Closed

    An unexpected connection driver error occured java net SocketException Socket Closed at java net SocketInputStream socke
  • 自动zksync刷账户交互(附代码)

    自动化任务的 Python 代码 它使用 Selenium 库来控制浏览器 解锁小狐狸 task unlock metamask ads zk主网连接钱包 初始化 ZK主网任务1 转账 print 选择ZK主网任务1 转账 task zk
  • 微信到 Obsidian 2.0

    注意 新项目已发布 Obsidian 从本地到云端 obcsapi v3 0 下面文章属于 2 0 版本 新项目是 3 0 版本 请读者根据自身实际情况酌情选择 本文原文 https www ftls xyz posts wechat2s3
  • 基于改进YOLOv7和CRNN的管道裂缝检测系统(源码&教程)

    1 研究背景 随着现代城市的发展 城市规模不断扩大 居民越来越多 早期深埋于城市地下的排水管道己不堪重负 越来越引起人们的广泛关注 目前在工程应用领域 排水管道缺陷主要靠人工的肉眼识别 费时费力 主观误差大 因此开展排水管道缺陷智能识别研究
  • 常用运放电路分析

    1 运算放大器电路分析方法 由于运放的电压放大倍数很大 一般通用型运算放大器的开环电压放大倍数都在80 dB以上 而运放的输出电压是有限的 一般在 10 V 14 V 因此运放的差模输入电压不足1 mV 两输入端近似等电位 相当于 短路 开
  • 亚马逊云科技云技能学习

    文章目录 前言 一 云技能学习的优势 二 云技能学习的学习路径 三 云技能学习的未来前景 总结 前言 亚马逊云科技 Amazon Web Services AWS 作为全球领先的云计算服务提供商 提供了众多创新的云技术解决方案 在这些方案中
  • [转载]一分钟讲明白区块链数据不可篡改和51%攻击原理

    转载 一分钟讲明白区块链数据不可篡改和51 攻击原理 如果你回家过年需要向亲戚朋友讲区块链 这篇文章能让你一分钟讲明白区块链最大的优点 数据不可篡改 图片发自简书App 第1章 不可篡改的数据库其实并不新鲜 我们都有微信群 微信群的聊天记录

随机推荐

  • Swing组件中面板(JPanel)的使用

    JPanel组件定义面板实际上是一种容器组件 用来容纳各种其他轻量级组件 此外 用户还可以用这种面板容器绘制图形 JPanel的构造方法如下 JPanel 创建具有双缓冲和流布局 FlowLayout 的面板 JPanel LayoutMa
  • SadTalker 让图片说话

    参考 https github com OpenTalker SadTalker 其他类似参考 https www d id com 输入图片加音频产生2d视频 安装使用 1 拉取github 下载对应安装库 2 下载对应模型baidu网盘
  • Windows如何开机自动全屏打开chrome浏览器

    创建一个bat文件 C Program Files Google Chrome Application chrome exe explicitly allowed ports 10080 18080 start fullscreen url
  • 【嵌入式】用STM32F103c8t6芯片完成对SD卡的数据读写

    目录 一 SD卡协议 1 SD卡的体系架构 2 SD卡寄存器列表 3 SD卡初始化 SPI模式 4 SD卡读写 SPI模式 二 STM32CubeMX 三 Keil代码修改 四 电路连接 五 烧录运行结果 六 心得体会 七 参考链接 一 S
  • Linux tcpdump抓包命令

    1 tcpdump抓包命令 c 指定抓取包的数量 即最后显示的数量 i 指定tcpdump监听的端口 未指定 选择系统中最小的以配置端口 i any 监听所有网络端口 i lo 监听lookback接口 nn 对监听地址以数字方式呈现 且对
  • 新版TCGA的突变数据SNP下载和整理

    关于TCGAbiolinks包的学习前面一共介绍了5篇推文 今天继续学习如何使用TCGAbiolinks下载和整理MAF格式的突变数据 之前的TCGA的MAF文件是可以下载的 每个癌症包含4种软件得到的突变文件 后来就改版了 不让你随便下载
  • 网络篇 OSPF的路由器类型-42

    OSPF路由器类型 在OSPF初篇的时候 就说到了OSPF是一种比EIGRP协议更加复杂的大型网络配置协议 它的路由器类型也分为了好几种 现在我们通过下图来了解一个OSPF路由器类型 1 内部路由器 所有的接口都接入到同一个区域中的路由器
  • 自定义类型——结构体、枚举、联合

    一 结构体 我们知道 数组是将相同类型的元素放在一起 类似于数组 结构体是将相同或不同的元素放在一起 eg struct example example是结构体名 可以省略 但不建议省略 内部的是结构体成员 int a char c flo
  • 冲量在线创始人刘尧:以信创软硬件结合场景为突破口“占山为王”

    数据大爆炸的时代 发展信创 保证数据的安全与流通便成为刻不容缓的议题 专注于数据智能互联解决方案的科技创新企业冲量在线 致力于促进数据生产要素在社会间的互联互通 构建可信 安全 隐私 公平 高效的 数据互链网 作为隐私计算结合信创的先行者
  • php简单密码验证txt,php用户名和密码的简单验证

    5 php页面提交form表单 username password 5 1 php页面接收form表单 并进行处理 设置用户名和密码 arr user array user pwd arr pwd array user gt 1111 pw
  • React 生命周期

    React 类组件的生命周期 就是组件从创建到消耗的过程 只有类组件才有生命周期 分为 挂载阶段 更新阶段 卸载阶段 挂载阶段 钩子函数 constructor 创建组件时 最先执行 作用 初始化 state 创建 Ref 使用 bind
  • 单机版kubernetes

    Kubernetes 集群的搭建是有一定难度的 官方安装推荐了MiniKube作为单机调试 学习 1 centos安装 1 1 先决条件 安装VirtualBox KVM Note Minikube 也支持 vm driver none 选
  • 【leecode】小练习(简单8题)

    def twoSum nums target 给定 nums 2 7 11 15 target 9 因为 nums 0 nums 1 2 7 9 所以返回 0 1 type nums List int type target int rty
  • nfs漏洞的处理:目标主机showmount -e信息泄露(CVE-1999-0554)

    文章目录 前言 一 漏洞内容 二 配置现状 1 nfs server节点 etc exports文件的配置 2 client节点执行showmount e 测试 三 nfs server节点增加访问控制的配置 1 etc hosts all
  • Node.js中Redirect拼接参数方法,带参数重定向

    一 在Node js里req redirect 里拼接URL是这样的 client1 req query client client1是你获取到的需要拼接的变量 res redirect allNode client client1 注意冒
  • openstack实战之使用sysprep工具封装windows7镜像

    openstack实战之使用sysprep工具封装windows7镜像 在openstack云平台环境下 使用sysprep封装windows7系统主要目的是清理虚拟机的SID 避免使用同一windows7镜像克隆出的虚拟机出现相同的SID
  • hive数据表去重方法

    1 hive 0 8 0数据表去重方法 问题描述 hive的外部表test中 在若干字段上存在重复现象 现在需要将若干字段上值相同的多条记录 只保其中留一条 舍弃其余的 解决思路 1 group by的方法 首先新建与test表完全相同的新
  • 单点登录的解析和代码实现

    单点登录 系统简介 Http协议 web应用采用browser server架构 http作为通信协议 http是无状态协议 浏览器的每一次请求 服务器会独立处理 不与之前或之后的请求产生关联 这个过程用下图说明 三次请求 响应对之间没有任
  • 生成图片验证码的两种实现方式

    最近工作中 需求让新加一个图片验证码功能 其实这个功能之前自己写过 想必跟大家现在心里想到的实现方式一样 要么是通过servlet实现请求操作 要么是通过get请求实现操作 然后在后台通过session存储图片上的字符串 和之后前台请求过来
  • 什么是测试开发工程师?

    什么是测试开发工程师 测试开发工程师 Software Development Engineer in Test 简称SDET 是指那些既可以称作是开发人员 同时也负责软件开发阶段和测试周期的测试工作的技术人员 一个专业的SDET更关注软件