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

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

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

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

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

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

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

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

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

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

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

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

阿里测开

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

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

测试平台的好处和不足

好处

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

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

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

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

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

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

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

不足

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

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

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

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

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

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

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

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

我对测试平台的看法

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

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

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

问题汇总

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

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

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

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

做测试平台的前提

对个人而言

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

对团队而言

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

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

测开都有哪些职责

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

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

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

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

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

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

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

总结

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

最后我邀请你进入我们的【软件测试学习交流群:1007119548】, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路

作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:程序员雨果】自提!

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

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

相关文章

DIcom调试Planar configuration

最近和CBCT组同事调dicom图像 这边得图像模块老不兼容对方得dicom文件。 vtk兼容,自己写得原生解析不兼容。 给对方调好了格式,下次生成文件还会有错。 简单记录下,日后备查。 今天对方又加了 个字段:Planar configuration 查…

【常识】大数据设计基础知识

底层存储:hadoop(hdfsmapreduce) Hadoop已经有十几年的历史,它是大数据领域的存储基石,HDFS目前仍然没有成熟替代品;MapR 文件系统在业内已经具有一定知名度了,不仅 MapR 宣布它自己的文件系统比 HDFS 快2-…

【Unity】【VRTK】【VR开发】同时保持高效打包和调试的VRTK项目设置方式

【背景】 开发功能时希望能够快速调试,在Preview和开发编辑器间流畅切换。后期又希望快速打包到目标安卓平台,感受头盔内部的画面和操作效果。麻烦在于,这两者往往不是明确区分的,很可能一会儿只是想快速验证一下某些功能动作&am…

二进制搭建 Kubernetes

实验流程 k8s集群master01:192.168.75.10 kube-apiserver kube-controller-manager kube-scheduler etcd k8s集群master02:192.168.80.20 k8s集群node01:192.168.75.20 kubelet kube-proxy docker k8s集群node02:192.168.…

Out of memory,realloc failed

git config --global http.postBuffer 1048576000

多线程相关(2)

线程池 构造函数处理过程拒绝策略JDK 内置的拒绝策略 Executors类实现线程池线程池大小设置 通过复用已创建的线程,降低资源损耗、线程可以直接处理队列中的任务加快响应速度、同时便于统一监控和管理。 构造函数 /*** 线程池构造函数7大参数*/ public ThreadPoolE…

opencv鼠标操作与响应

//鼠标事件 Point sp(-1, -1); Point ep(-1, -1); Mat temp; static void on_draw(int event, int x, int y, int flags, void *userdata) {Mat image *((Mat*)userdata);if (event EVENT_LBUTTONDOWN) {sp.x x;sp.y y;std::cout << "start point:"<<…

动态住宅IP代理是什么意思,与静态住宅IP代理的区别和比较

动态住宅IP代理是一种不断变化的IP地址解决方案&#xff0c;用于提高在线安全性、绕过地理限制并进行高级数据挖掘。与静态住宅IP代理相比&#xff0c;动态IP提供更高的匿名性和灵活性&#xff0c;但也有其独特的局限性和成本。我们旨在为您提供一个全面的视角&#xff0c;让您…

LocalSend跨设备传输文件传输协议 v2

LocalSend仓库地址&#xff1a;GitHub - localsend/localsend: An open-source cross-platform alternative to AirDrop LocalSend 协议 v2 English | 简体中文 主要为了实现一个不依赖于任何外部服务器的简单 REST 协议。 因为计算机网络比较复杂&#xff0c;因此我们不能假…

Java实现假日旅社管理系统 JAVA+Vue+SpringBoot+MySQL

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 系统介绍2.2 QA 问答 三、系统展示四、核心代码4.1 查询民宿4.2 新增民宿评论4.3 查询民宿新闻4.4 新建民宿预订单4.5 查询我的民宿预订单 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的假日旅社…

第十七届“挑战杯”广东大学生课外学术科技作品比赛感想

博主曾在2023年参加了第十七届“挑战杯”广东大学生课外学术科技作品比赛&#xff0c;也就是人们俗称的大挑&#xff0c;在团队赛里面含金量应该是排在第一档的了&#xff0c;当初我们有幸作为学校唯一一支科技创新B类进入到线下答辩&#xff0c;线下答辩就是区分银奖和金奖和特…

恩智浦MCX A系列:开启工程师的无限创造潜力 | 百能云芯

恩智浦半导体&#xff08;NXP&#xff09;最近宣布推出旗下MCX产品组合中的全新成员——通用A系列的首批产品MCX A14x和MCX A15x&#xff0c;现已正式上市。这一系列的微控制器&#xff08;MCU&#xff09;不仅性价比高、使用便捷、体积小巧&#xff0c;而且还旨在为工程师们打…

分布式版本控制系统 Git

目录 一、Git简介 二、Git历史 三、安装git 1.准备环境 2.Yum安装Git 四、初次运行 Git 前的配置 命令集 实例&#xff1a; 五、Git命令常规操作 六、获取 Git 仓库&#xff08;初始化仓库&#xff09; 创建裸库 实例 &#xff1a; 创建本地库 一、Git简介 官网&…

opencv-python安装失败问题解决

用pip install opencv-python命令终端中出现如下报错&#xff1a; 解决方法&#xff0c;换一个源&#xff0c;输入&#xff1a; pip install opencv-python -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com运行之后即可安装成功&#xff1a;

浅谈加密算法(对称加密、非对称加密、混合加密、数字签名、哈希函数)

1、对称加密 对称加密只有一个密钥&#xff0c;直接使用这一个密钥对信息进行加密或解密。这样子就使得对称加密解密十分高效&#xff0c;计算量也相较于非对称加密小很多&#xff0c;适合有大量数据的场合。 密钥只有一个且他一定不能泄漏。由此分发密钥&#xff0c;讲这个密钥…

SQL 练习题目(入门级)

今天发现了一个练习SQL的网站--牛客网。里面题目挺多的&#xff0c;按照入门、简单、中等、困难进行了分类&#xff0c;可以直接在线输入SQL语句验证是否正确&#xff0c;并且提供了测试表的创建语句&#xff0c;也可以方便自己拓展练习&#xff0c;感觉还是很不错的一个网站&a…

ChromeDriver | 谷歌浏览器驱动下载地址 及 浏览器版本禁止更新

在使用selenoum时&#xff0c;需要chrome浏览器的版本和chrome浏览器驱动的版本一致匹配&#xff0c;才能进行自动化测试 一、ChromeDriver驱动镜像网址 国内可以搜到的谷歌浏览器下载地址里面最新的驱动器只有114版本的CNPM Binaries Mirror 在其他博主那找到了最新版本12X的…

【PX4SimulinkGazebo联合仿真】在Simulink中使用ROS2控制无人机沿自定义圆形轨迹飞行并在Gazebo中可视化

在Simulink中使用ROS2控制无人机沿自定义圆形轨迹飞行并在Gazebo中可视化 系统架构Matlab官方例程Control a Simulated UAV Using ROS 2 and PX4 Bridge运行所需的环境配置PX4&Simulink&Gazebo联合仿真实现方法建立Simulink模型并完成基本配置整体框架各子系统实现原理…

识别图片字符-PaddleOCR

PaddleOCR 是由百度开发的一个开源光学字符识别&#xff08;OCR&#xff09;工具&#xff0c;它可以识别图片中的文本信息。然而&#xff0c;PaddleOCR 本身主要专注于文本的检测与识别 安装PaddleOCR框架 pip install paddlepaddle paddleocr 使用PaddleOCR识别图片代码 fro…

STL - hash

1、unordered系列关联式容器 在C98中&#xff0c;STL提供了底层为红黑树结构的一系列关联式容器&#xff0c;在查询时效率可达到O()&#xff0c;即最差情况下需要比较红黑树的高度次&#xff0c;当树中的节点非常多时&#xff0c;查询效率也不理想。最好 的查询是&#xff0c;进…