【软件测试】7年资深带你详探什么是测试开发?

news2024/12/23 10:29:12

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

在一些大公司里,会设立测试开发岗位,薪资比常规的测试要高,甚至有一些会跟开发岗位拿到的差不多。

那么这个岗位究竟是干什么的呢?

实际上也是软件开发工程师,但是专门针对测试领域,通过编写代码去帮助开发工程师测试他们的业务代码。

所以测试开发一般是不参与公司产品代码开发的,而是去测试产品代码,发现 bug,保障质量。

但这么说比较简单,实际上每个公司对这个岗位的定位不完全一样。

我了解到的情况是这样的:
有些公司,测试开发偏重于开发工作,他们开发测试工具、测试平台、测试框架等,提供业务测试人员去使用,帮助整个测试团队提高测试效率和完成人工无法覆盖到的测试面。但他们较少参与到测试中来,不怎么去写测试用例,所以如果具备开发能力就能胜任。

有些公司,测试开发偏重于测试工作,他们要参与到业务中,针对接口,API 编写用例代码去测试。这要求他们具备测试能力,知道如何设计用例,并熟悉业务产品系统的特点。

在我看来,如果某个测试开发的工作内容特别偏向其中一块对其发展都不太好。

我的观点如下:
如果多数时间的工作内容属于第一种,也就是偏重工具,平台开发这一块,那么纯开发也是能做的,这样对比开发就没有什么优势。因为测试产品都是对内使用,很多功能优先考虑实现出来,能够快速投入交付,而不会像产品功能那样,要考虑 UI、性能、稳定性、安全性等等更加复杂的环境,这样对开发能力提高有限,天花板就会很低。

如果多数时间的工作内容属于第二种,偏重测试业务的话,过多测试方面的工作,会让其开发能力得不到很好的发展。因为接口,API 分析及用例设计也是很消耗精力的事,更多的情况则是借助现成的框架去开发用例代码,执行代码,提交 bug 和维护它们。缺乏更深入的开发能力就会在面对更复杂,更底层的系统时没有很好的应对策略。

不过两种情况相比的话,第二种发展会更好一些,因为培养了测试能力,同时具备代码水平,可以往自动化测试方向平移。

因此作为测试开发,需要把自己的天花板设的更高,成为资深级的测试开发,就需要很好地兼备测试以及开发两种能力。

一保障测试体系下的开发能力。

理解移动端和 Web 端的热门自动化测试平台,测试框架技术,原理,要非常清楚它们的架构是如何设计的,用到了哪些开发技术。

熟悉移动端和 Web 端的热门框架,原理和用法。能够搭建开发一套 Web 服务(这对开发质量监控等平台是最基本的)。

其他的开发基础知识,编码等常规能力,在上面两类能达成的基础上就不会存在太大问题。

二保障测试体系下的测试能力。

测试讲究质量、效率、覆盖率等,所以对持续集成、持续交付、分层测试、mock 测试要理解和熟练
一些专项领域,移动端的比如耗电量、流量检测、CPU 内存监测、流畅度、界面切换时间、内存泄漏检测等的测试方法要非常清晰;Web 端的并发,吞吐量监测,可用性监测等方法也要十分清楚。

对业务系统比如分布式,负载均衡等的测试方法也要掌握。

所以说,一个测试开发干得好,干到极致的时候,真的是比一个开发还要强。

在国外,大的软件公司的软件测试工程师通常都需要是非常资深的软件开发工程师才能够胜任的。因为挖掘漏洞这种活,需要工程师对系统有非常深入的认识。

国内的情况,由于竞争太过于激烈,小公司在测试上只能停留在界面 UI 的黑盒,也只有大公司对测试开发才有更大的需求,因而薪资待遇也更高。

测试开发这个岗位,未来需要的人才是综合性人才,一个具备多种能力的软件工程师一定是更能适应软件行业发展的。但综合性意味着很难精通,所以对测试开发来说,向上突得更高意味着要付出更加巨大的精力。

下面是我整理的2022年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

没有别人聪明,就要比别人努力!没有别人有钱,就要比别人能吃苦!没有别人的机会多,就要主动去创造机会!一份付出一份收获。

每个人真正强大起来都要度过一段没人帮忙,没人支持的日子。所有事情都是自己一个人撑,所有情绪都是只有自己知道。但只要咬牙撑过去,一切都不一样了。

目标的坚定是性格中最必要的力量源泉之一,也是成功的利器之一。没有它,天才也会在矛盾无定的迷径中徒劳无功。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/51384.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构初阶--二叉树介绍(基本性质+堆实现顺序结构)

树的基本概念和结构 树的相关概念 节点的度:一个节点含有的子树的个数称为该节点的度; 如上图:A的为2叶节点或终端节点:度为0的节点称为叶节点; 如上图:D、F、G、H为叶节点非终端节点或分支节点&#xff1…

Unity笔记(13):Android Movement of Characters[2D]

目录 1、搭建一个测试场景 2、建立画布设置移动按钮 3、编写脚本绑定按钮 AxisTouchButton :ButtonHandler : 4、编写脚本绑定角色 原来的按键移动 修改为触摸按钮 5、导出为APK文件,手机下载进行测试 1、搭建一个测试场景 2、建立画…

【正点原子FPGA连载】第二十四章 双路高速DA实验 摘自【正点原子】DFZU2EG/4EV MPSoC 之FPGA开发指南V1.0

1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id692450874670 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第二十四章 双路…

【EXCEL拦路虎】解决一些常遇到的excel问题

【问题一】 解决.CSV文件转为excel文件乱码问题 方法二:参考 解决Excel打开CSV文件中文乱码问题 【问题二】 解决内容过长后面的空白表格被前一列的字符填满,(内容过长就会覆盖前后的单元格),如下图: 解决…

vue 新增枚举类型栏位

dict-tag 标签新增枚举类型栏位 新增栏位数据字典 新增字典命名规范为coin_表字段名 新增字典枚举数据,key value Value标签格式为 值-key 如 1-成交 分别对应的新增为两张表: Sys_dict_type --字典类型 Sys_dict_data --字典数据 前端栏位 &l…

数据库学习

数据是描述事务的符号记录,包括数字、文字、图像、音频等,以“记录”的形式按统一的格式进行存储;表将不同的记录组织在一起,用来存储具体的数据;数据库是表的集合,是存储数据的仓库,它以一定的…

基于粒子群算法的电力系统无功优化研究(IEEE14节点)(Matlab代码实现)

💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥 📋📋📋本文目录如下:⛳️⛳️⛳️ ​ 目录 1 概述 2 无功优化数学模型 3 …

剑指 Offer 15. 二进制中1的个数

一、题目描述 编写一个函数,输入是一个无符号整数(以二进制串的形式),返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为 汉明重量).)。 二、示例 示例 1: 输入:n 11 (控制…

基于SSM的邮箱客户端的设计与实现

目 录 摘 要 I Abstract II 第1章 绪论 1 1.1 选题及意义 1 1.2 邮箱发展现状 1 1.2.1开源邮件系统 2 1.2.2国外商业邮件系统 2 1.2.3国内商业邮件系统 2 1.3研究内容 4 第2章 相关技术的理论概述 5 2.1 JSPServlet技术优势 5 2.2Mysql数据库的介绍 6 2.3 tomcat服务器介绍 6 2…

mmdetection3d nuScenes (持续更新)

Mmdetection3d集成了大量3D深度学习算法,其中很大一部分可以在智能驾驶nuScenes数据集上运行。在算法应用nuScenes数据之前,mmdetection3d提供了相应的预处理程序。关于nuScenes的详细介绍请参考本博客之前的文章nuScenes数据集详细介绍_Coding的叶子的博…

react+node.js+mysql 前后端分离项目 宝塔面板 部署到腾讯云服务器

目录一. 前端项目部署1.登录宝塔面板并安装环境依赖2. 打包上传,部署前端项目3.端口放行二. 后端项目部署1.上传后端项目2. PM2中添加项目三. mysql1.宝塔面板 添加数据库2.导入sql文件一. 前端项目部署 1.登录宝塔面板并安装环境依赖 命令行第一行输入刚才复制的内…

你是否还记得有一款游戏叫做“魔塔”?

目录 前言 正文 游戏介绍: 游戏开发制作流程 1.收集素材 2.创建攻击函数 2.1 定义两个对象(主角和怪物) 2.2 函数输出为【0】表示打不过,胜利输出受损生命值,设置 cancel 可以撤销本次战斗即回到之前状态 2.…

pinia安装使用

pinia中文文档 目录 一.pinia简介 二. pinia安装 三.pinia使用 1.main.js中创建pinia实例 2.创建store状态库 定义state state的读写 state响应式解构 state的修改 Getters的使用 Pinia中Store的互相调用 一.pinia简介 Pinia是vue生态里Vuex的替代者,一个…

MySQL笔记【面试】

MySQL笔记【面试】前言推荐MySQL笔记最后前言 以下内容源自A minor 仅供学习交流使用 推荐 MySQL MySQL笔记 【MySQL】基础使用(一):支持的数据类型 【MySQL】基础使用(二):常用 SQL 语句大全 【MyS…

推荐系统-概述:基本架构

提纲 过去八九年在广告、生活服务、电商等领域从事大数据及推荐系统相关工作,近来打算对过去的工作做一个系统性的梳理。一方面帮自己查缺补漏、进行更深入的学习;另一方面也希望能通过博客结交同好,增进交流。 这一博客系列以介绍推荐系统为…

Arduino开发实例-旋转编码器RGB-LED调光

旋转编码器RGB-LED调光 在本文中,将使用 Arduino 和旋转编码器进行 RGB LED 颜色控制。 我们将旋转旋转编码器来分配值。 红色、绿色和蓝色将合并以显示基于该值的全新颜色。 在这里,使用具有红色、绿色和蓝色的单 RGB 颜色 LED,也可以使用长 RGB LED 灯条。 此外,还可以使…

「Redis」02 Redis中的数据类型(含Redis6.0:Bitmaps、HyperLogLog、Geospatial)

笔记整理自【尚硅谷】Redis 6 入门到精通 超详细 教程 Redis——Redis中的数据类型 0. 键 (key) 操作 keys *:查看当前库所有 keyexists key:判断某个 key 是否存在type key:查看你的 key 是什么类型del key :删除指定的 key 数…

[附源码]Python计算机毕业设计Django工程施工多层级管理架构

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

VMware的安装、配置及其Linux的安装、简单配置

安装VMware 1、找到下载好的安装包,双击 2、点击下一步 3、勾选 我接受许可协议中的条款 4、选择合适的路径安装 5、取消勾选项,如图所示 6、下一步 7、安装 8、等待(等待半分钟左右) 8、点击许可证 9、复制下面其中的密码 key…

centos7磁盘扩容(虚拟机Mac m1)

为了安装HDP3.1.4(Ambari2.7.4)弄了三台虚拟机,但安装完mysql和操作完前期准备后,上传ambari,HDP,HDP-UTILS安装包时,磁盘居然不够了,又是一顿折腾...... 第一种在原来磁盘上扩大存储 1.虚拟机磁盘大小设…