阿里同学聊测试开发与测试平台

news2024/11/26 2:54:21

在一线大厂,没有测试这个岗位,只有测开这个岗位,即使是做业务测试,那么你的title也是测开。

所以想聊一聊测开的看法,但不代表这是正确的看法,仅供参考。

没来阿里之前我对测开的看法

一直以为专职做自动化测试和性能测试是测试这条路的最终归宿,测试开发,只是大厂才可能存在的角色;测试平台,少部分公司才会用到的东西,肯定不会成为主流的。

况且测试平台要会前端还得会后端,你都这么全栈为什么不做开发呢?做UI自动化、接口自动化直接写python脚本不就好了嘛,做性能测试用Jmeter就好了。

在多数人眼中,测试开发就是“开发一个测试平台,就要包揽前后端”,至少我一开始也是这样认为的。

前端要会、后端也要会,测试也得会,感觉就是全能的啊!

来了阿里之后,对测开看法有了转变:测开才是做测试这条路的最终归宿,其实不只是测试,包括运维,最终肯定是运维开发,而不是自动化运维(抛开管理层而言)。

只有开发测试平台才是测开的最终选择吗?不,不是的!

但做出一个平台是最容易体现你身为测开的价值,毕竟你前后端都啃了,能跟开发同学一样弄一个完整的平台了,晋升那不是妥妥的,现在大部分同学都很敬佩有开源测试平台经验的人。

包括在阿里,其实之前就有很多人聊过,如果你平时搬砖没有做一些技术活,那你的晋升之路肯定没有做纯技术的同学顺利,因为晋升答辩你可以短时间展示你的技术能力,但是没有办法短时间展示你的业务能力或者其他软实力。

阿里测开

其实是分部门的,如果是业务部门,那一般就是业务测试,点点点也不例外,当然你可以自己决定是否开发一些工具、脚本来辅助测试。如果是基础建设部门,那可能就是开发平台,或者是一些通用型工具。

像我们部门的话,很推崇技术解决问题,所以很多时候会用自动化去解决一些痛点,所以也有很多锻炼的机会等着我……

测试平台的好处和不足

好处

1、接口测试、UI自动化测试、性能测试均可通过点击页面解决,因此可以降低做自动化测试、性能测试的门槛,提高测试效率、测试广度。

2、平台有页面,页面友好能提高人干活的积极性,小白或者新同学见到也愿意去做和学习,也就提高了个人的主观能动性。

3、使用平台代表团队共享、数据共享、项目共享,基础弱的同学可以看到大神同学写的东西,这就可以提高团队的分享氛围,促进不同技术能力的同学互相学习,当然前提要肯去学。

4、数据共享意味着一切皆可溯源,比如有人删库跑路、删数据跑路,那对应的操作人记录肯定能看到,可以提高项目的稳定性。

5、数据私有化,这个私有化指的是,项目所有数据都可以保存在自己公司服务器 ,提高项目的安全性,不过大部分开源项目应该都支持私有化部署。

6、做出测试平台的同学更容易得到团队中的认可,能提高个人的影响力和晋升成功率。

还有其它好处,就不一一列举了。

不足

其实有些好处就是不足,比如:
1、降低了高阶测试的门槛,所以会让测试同学的技术能力更加两极分化,做技术的可能会越做越好,但本身没有代码能力的测试同学可能只能通过平台来做接口测试、自动化测试,缺少了自己独立锻炼实战的机会。

2、测试平台化是趋势,所以未来一定会有更多的企业效仿大厂招测试开发,那转行做测试的门槛也会更加高,未来可能会像面开发一样面测试(大厂已经是了)。

不过这个应该是算优势也算劣势吧,提高测试的竞争力可以提高测试的地位,只不过会淘汰很多只会手工测试不愿学习代码的同学。

3、做测试平台,不仅需要有很强的测试能力,因为你都不了解测试需要什么,怎么开发出一个好的平台呢?

然后还得需要有前后端的知识,可能还得加上运维知识,所以你得会很多东西,这就变成做测试平台的门槛反而很高,以至于有些开发同学来转行做测开。

4、做成一个可用性、稳定性、易用性都很好的测试平台,所需要的时间成本、人力成本是巨大的,因为这相当于开发一个完整的新项目,所以它的生命周期会很长,如何说服你的老板同意去做是一个问题,这就不仅需要你的技术能力能说服老板,更需要老板有魄力支持你。

假设你的技术能力low一点,那么它可能就无法在多个团队中展开使用,这样会导致投入产出比非常低,即使用起来,可能后期维护成本也很高……

这样来看其实平台也有很多不足。

我对测试平台的看法

它会是趋势,但它很难每个公司都能独立完成一个测试平台。前面有说过,完成测试平台所需要的能力五花八门,所以当你会这么多技能的时候,你可能就想要很高的薪资,但从国内对测试的态度来看,它的工资肯定会比开发低一层(大厂无视),这就变成一个恶性循环,公司想要低成本劳动力干测开的活,你作为测开想要拿到更高的薪资。

所以网上有很多开源的测试平台,一般没能力开发平台的公司就会私有化部署,然后再定制化二次开发,这也是一种趋势,应该不存在销售测试平台的情况,毕竟开源的都挺好看挺好用的。

测试平台很难做到适配所有项目,包括在阿里其实测试平台特别多,自动化、性能、兼容、云真机,但我所在的部门一个都没用上,原因有很多种,就不细说了。

问题汇总

测试平台是测开必需品吗?

我认为不是的,测试平台虽然很能体现测开的能力,但不是唯一方式。

实际项目中用不到测试平台,有必要学习吗?

只要是对自己成长有帮助的,其实都应该学习,只不过有优先级而已。假设未来你想走测开路线,那么学习如何开发测试平台也未尝不可,当然不影响当前工作前提下。

做测试平台的前提

对个人而言

有一个测试平台项目经历,可以提高面试通过率和自己的技术能力。

对团队而言

应该是质量效能部,或者基础建设部来主导,而不是业务测试部门来主导,这应该是一个专职工作,而不是闲下来的时候弄一弄。

另外要确保得到老板的支持,充分调研测试平台的可行性,比如团队组成、技术选型、可承受的损失范围、平台使用的部门等等。

测开都有哪些职责

我的主管跟我聊过,测开并不一定要做测试平台才算测开,一个合格的测开,应该是对自己项目上用到的编程语言很熟悉,如同开发一样熟,甚至要比他们还熟悉。

作为测开,可以给开发同学进行code review,特别是有新开发同学刚入职可能对业务、代码架构不熟悉,写的代码就会乱七八糟,这个时候假如你很熟悉整套代码,很熟悉这个编程语言,那么你就可以提出优化建议。

不要说不可能,我主管就可以,比开发还熟悉编程语言,另外还可以写单元测试,我们的服务端单元测试覆盖率是70%左右,所以基本服务端没啥Bug。

测试开发可以是开发平台,也可以是开发工具,亦可以是编写脚本,但都有一个最终目的,使用你的开发技能来提高测试效率、测试广度、深度,用更高的测试覆盖率来保障项目质量。

开发工具,可以是二次开发开源框架,比如RF,可以是二次开发测试工具,比如Jmeter。二次开发的前提不是为了秀你的技术,而是当前的工具/框架满足不了你的测试场景,所以你要二次开发,以此来满足。

像我项目中,因为有自研的rpc框架,所以需要二次开发Jmeter的取样器,才能正常测试。

至于到底要不要开发测试平台,这个只能看自己团队了~

总结

虽然市场上,很多测试开发工程师,没有这里提到的各种水平,但是他们有一个特点,会测试懂开发,代码基础特别扎实。我强烈建议你按着这个学习路线进行学习,坚持学习,尽量到达测试开发的目标,如果达不到,你也会接近这个目标,相信自己,持续学习,坚持下去,不轻易放弃。

 

总结:

感谢每一个认真阅读我文章的人!!!

作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。

  1. 文档获取方式:

  2. 加入我的软件测试交流群:680748947免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

这份文档,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

以上均可以分享,只需要你搜索vx公众号:程序员雨果,即可免费领取

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

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

相关文章

京东重押AI,普通人如何把握AI短视频直播的机遇?

京东重押AI,普通人如何把握AI短视频直播的机遇? 现在普通人没有大厂那样,有雄厚资金财力支撑的,但是又想在AI赛道上把握机遇,那选择就相当重要了,要选择一个真正适合自己的AI项目。 餐赞是一家专注于生活服…

截图识别公式软件都有哪些?分享3个工具!

在学术、教育、科研等领域,公式是不可或缺的一部分。然而,有时我们可能会遇到需要将纸质或屏幕上的公式快速转换为电子文本的情况。这时,一款能够准确识别截图中公式的软件就显得尤为重要。本文将介绍几款可以截图识别公式的软件,…

【数据结构与算法】:快速排序和归并排序的非递归实现

1. 递归实现的缺陷 在以前的文章中我们把快速排序和归并排序的递归实现方式进行了介绍,但是在校招面试和在企业的日常开发过程中,仅掌握递归方法是不够的,因为递归也有它的缺陷。 我们知道在函数调用过程中会在内存中建立栈帧,栈…

【多线程】线程(线程的概念+线程的创建)

文章目录 线程一、线程的概念1.引入线程的目的2.什么叫线程(Thread)1.线程的特点:2.进程和线程的区别(面试题):3.Java的多线程编程 二、创建线程1.继承Thread重写run入口方法:使用jconsolesleep…

文件夹变应用?数据恢复大解密!

在日常使用电脑的过程中,许多用户可能都曾遭遇过这样一个奇怪的现象:原本用来存放文件的普通文件夹,突然变成了应用程序的图标。这种突如其来的变化不仅令人困惑,更可能导致重要数据的丢失或损坏。那么,究竟是什么原因…

最佳UI设计软件推荐:全球顶尖工具一览!

在这个信息化、数字化的时代,我们的生活、工作,甚至娱乐,都被各种各样的网站所包围。随着技术的发展,人们对网页UI设计的要求也越来越高。所以问题是,作为一个想要提高他们的UI设计能力的设计师,你应该如何…

渗透学习第一天:DR4G0N B4LL靶场复现

0x00 环境搭建 攻击机为kali Linux,IP为192.168.71.129 靶机IP地址目前不知道,但是是和kali同网段的 0x01 信息收集 由于不知道目标的IP地址,这里我采用了arp scan对本机的整个网段进行扫描 发现目标IP为192.168.71.130。对目标IP进行端…

高校人事管理系统业务分析

目标用户 大学人事部门,其他部门、院系、个人 解决问题 人事部门按业务划分了很多科室、数据分散、工作流程杂乱、工作效率低。 主要功能模块 人事综合管理平台、个人自助服务平台、人才招聘管理系统、薪酬管理子系统、职称评审子系统、绩效考核子系统组成。

【精选】发布应用到应用商店的基本介绍

摘要 本文旨在介绍如何在各大应用商店发布应用,包括市场选择、准备材料、上架步骤以及常见被拒原因及解决方法。通过详细的步骤和经验分享,帮助开发者顺利将应用推向市场。 引言 随着移动应用市场的不断发展,越来越多的开发者希望将他们的…

44-技术演进(下):软件架构和应用生命周期技术演进之路

应用、系统资源、应用生命周期管理这 3 个维度,构成了我们对云的所有诉求。 我会介绍下应用维度和应用生命周期管理维度的技术演进。 我们就先来看下软件架构的演进之路。 软件架构的演进 软件架构技术演进如下图所示: 单体架构 在单体架构中&#xff…

c++——sort()函数

一、代码和效果 #include<bits/stdc.h> using namespace std;int main() {int a[6]{1,45,2,5,456,7};sort(a,a6);for(int i0; i<6; i){cout<<a[i]<<" "<<endl;}return 0; } 二、sort函数解析 &#xff08;从小到大&#xff09; std::so…

Linux安装MuJoCo各版本及D4RL教程

Linux安装MuJoCo各版本及D4RL教程 文章目录 Linux安装MuJoCo各版本及D4RL教程Linux安装MuJoco150一、下载MuJoco1501.1 文件下载1.2 文件存放位置1.3 环境变量设置 二、安装mujoco-py三、验证mujoco-py安装是否成功 Linux安装MuJoco200一、下载MuJoco2001.1 文件下载1.2 文件存…

【随笔】Git 高级篇 -- 快速定位分支 ^|~(二十三)

&#x1f48c; 所属专栏&#xff1a;【Git】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &#x1f496; 欢迎大…

php:实现压缩文件上传、解压、文件更名、压缩包删除功能

效果图 1.上传文件 2.压缩包文件 3.itemno1文件 4.上传到系统路径\ItemNo 更名后的itemno1文件 代码 <form action"<?php echo htmlspecialchars($_SERVER[PHP_SELF], ENT_QUOTES, UTF-8); ?>" method"post" enctype"multipart/form-dat…

Python+Selenium+Unittest 之Unittest3(TestSuite()和TextTestRunner())

目录 1&#xff1a;addTest() 2、addTests() 3&#xff1a;discover() 上一篇说了Unittest的一个基本的执行顺序&#xff0c;那如果我们想要调整用例的执行先后顺序的话&#xff0c;可以用TestSuite()和TextTestRunner()了&#xff0c;可以这么理解&#xff0c;比如一个班级…

TRON x HTX DAO 2024 香港之夜:共建香港元宇宙金融自由港

4月9日&#xff0c;由波场TRON主办&#xff0c;HTX DAO协办的“TRON x HTX DAO 2024 香港之夜”主题活动在香港盛大举行。多位参与HTX DAO生态建设的项目方代表、委员会成员、知名KOL等出席并就HTX DAO发展及加密业态进行演讲。 活动现场&#xff0c;波场TRON创始人孙宇晨通过视…

WordPress LayerSlider插件SQL注入漏洞复现(CVE-2024-2879)

0x01 产品简介 WordPress插件LayerSlider是一款可视化网页内容编辑器、图形设计软件和数字视觉效果应用程序,全球活跃安装量超过 1,000,000 次。 0x02 漏洞概述 WordPress LayerSlider插件版本7.9.11 – 7.10.0中,由于对用户提供的参数转义不充分以及缺少wpdb::prepare(),…

使用Docker部署开源项目FreeGPT35来免费调用ChatGPT3.5 API

Vercel部署FreeGPT35有严重限制&#xff0c;玩玩就好&#xff0c;真用还是得docker。 限制原因: Vercel的流式响应并不是一开始写流&#xff0c;客户端就能立刻收到响应流&#xff0c;而是先写到一个缓冲区&#xff0c;当流关闭才一股脑的流式响应回来(不是实时流) 因此导致: …

代码随想录Day31:贪心算法Part1

贪心算法的理论基础 主要的思路就是通过想局部最优解然后看能不能推导出全局最优&#xff0c;但是贪心算法没有统一的套路&#xff0c;每一个问题的贪心思路都可以非常不一样 Leetcode 455. 分发饼干 讲解前&#xff1a; 这时第一道贪心算法的题目&#xff0c;所以很简单&am…

Open CASCADE学习|放样建模

在CAD软件中&#xff0c;Loft&#xff08;放样&#xff09;功能则是用于创建三维实体或曲面的重要工具。通过选取两个或多个横截面&#xff0c;并沿这些横截面进行放样&#xff0c;可以生成复杂的三维模型。在CAD放样功能的操作中&#xff0c;用户可以选择不同的选项来定制放样…