• 0
  • 0
分享
  • 聊一聊我对测试开发的看法——软件测试圈
  • 北极 2022-05-24 15:37:23 字数 2835 阅读 1040 收藏 0

前言

  • 在一线大厂,没有测试这个岗位,只有测开这个岗位

  • 即使是做业务测试,那么你的title也是测开

  • 所以想聊一聊测开的看法

  • 但不代表这是正确的看法,仅供参考

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

  • 一直以为专职做自动化测试和性能测试是测试这条路的最终归宿

  • 测试开发,只是大厂才可能存在的角色

  • 测试平台,少部分公司才会用到的东西,肯定不会成为主流的啦

  • 况且测试平台要会前端还得会后端,你都这么全栈为什么不做开发呢

  • 做 UI 自动化、接口自动化直接写 python 脚本不就好了嘛,做性能测试用 Jmeter 就好了嘛

多数人眼中的测试开发

  • 开发一个测试平台,就要包揽前后端

  • 至少我一开始也是这样认为的

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

来了阿里之后,对测开看法有了转变

  • 测开才是做测试这条路的最终归宿,其实不只是测试吧,包括运维,最终肯定是运维开发,而不是自动化运维(抛开管理层而言)

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

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

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

阿里的测开是干嘛的

  • 其实是分部门的

  • 如果是业务部门,那一般就是业务测试,点点点也不例外哦,当然你可以自己决定是否开发一些工具、脚本来辅助测试

  • 如果是基础建设部门,那可能就是开发平台啊,或者是一些通用型工具

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

测试平台的好处和不足

好处

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

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

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

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

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

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

  • ....

  • 平台肯定有蛮多的优点的

不足

  • 其实有些好处就是不足

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

  • 测试平台化是趋势,所以未来一定会有更多的企业效仿大厂招测试开发,那转行做测试的门槛也会更加高,未来可能会像面开发一样面测试(大厂已经是了);不过这个应该是算优势也算劣势吧,提高测试的竞争力可以提高测试的地位,只不过会淘汰很多只会手工测试不愿学习代码的同学

  • 做测试平台,不仅需要有很强的测试能力,因为你都不了解测试需要什么,怎么开发出一个好的平台呢?然后还得需要有前后端的知识,可能还得加上运维知识,所以你得会很多东西,这就变成做测试平台的门槛反而很高,以至于有些开发同学来转行做测开

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

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

  • ....

  • 其实平台也有很多不足

我对测试平台的看法

  • 它会是趋势,但它很难每个公司都能独立完成一个测试平台

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

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

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

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

  • 我认为不是的

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

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

  • 只要是对自己成长有帮助的,其实都应该学习,只不过有优先级而已

  • 假设未来你想走测开路线,那么学习如何开发测试平台也未尝不可,当然不影响当前工作前提下咯

做测试平台的前提

对个人而言

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

对团队而言

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

  • 确保得到老板的支持

  • 充分调研测试平台的可行性,比如团队组成,技术选型,可承受的损失范围,平台使用的部门,等等

心目中的测开都有哪些职责

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

  • 作为测开,可以给开发同学进行 code review,特别是有新开发同学刚入职可能对业务、代码架构不熟悉,写的代码就会乱七八糟,这个时候假如你很熟悉整套代码,很熟悉这个编程语言,那么你就可以提出优化建议,不要说不可能,我主管就可以,比开发还熟悉编程语言;另外还可以写单元测试,我们的服务端单元测试覆盖率是 70% 左右,所以基本服务端没啥 bug

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

  • 开发工具,可以是二次开发开源框架,比如 RF,可以是二次开发测试工具,比如 Jmeter,二次开发的前提不是为了秀你的技术,而是当前的工具/框架满足不了你的测试场景,所以你要二次开发,以此来满足;像我项目中,因为有自研的 rpc 框架,所以需要二次开发 Jmeter 的取样器,才能正常测试

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

 

本文作者: 小菠萝测试笔记

本文链接: https://www.cnblogs.com/poloyy/p/14965380.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   关于“好的” 的定义  “好的”测试用例一定是一个完备的集合,可以覆盖所有等价类以及各种边界值,而跟它最终是否可以发现缺陷无关。  “好的”用例具备的特征  1.等价类集合的完备性  需要保证所有可能的边界值和边界条件都已经正确识别。  2.等价类划分的准确性  指的是对于每个等价类都能保证只要其中一个输入测试通过,其他输入也一定测试通过。  3.整体完备性  往往一个功能点需要涉及到多个用例去覆盖方方面面,所以测试用例是一个完备的整体,是有效测试用例的集合,能完全覆盖测试需求。  最常用三种用例设计方法  1. 等价类划分方法  2. 边界值分析方法  3. 错误推测方法  如何才能设计...
            0 0 1092
            分享
          • 安全测试这是一种由特殊团队执行的测试。任何黑客方法都可以渗透系统。进行安全测试以检查软件、应用程序或网站如何免受内部和/或外部威胁。该测试包括有多少软件可以抵御恶意程序、病毒以及授权和身份验证过程的安全性和强度。它还检查软件对任何黑客攻击和恶意程序的行为,以及在此类黑客攻击后如何维护软件以确保数据安全。a) 渗透测试渗透测试或渗透测试是作为对系统的授权网络攻击执行的安全测试类型,以找出系统在安全方面的弱点。渗透测试由外部承包商执行,通常称为道德黑客。这就是为什么它也被称为道德黑客。承包商执行不同的操作,如 SQL 注入、URL 操作、特权提升、会话到期,并向组织提供报告。注意:不要在您的笔记本...
            0 0 837
            分享
          • 一、为什么从开发转测试笔者从2019年5月开始从一名java开发女程序猿正式转为测试开发工程师,原因除了机缘凑巧之外,当然是因为这个行业对测试工程师的要求已经越来越高,简单做些UI脚本录制和回放的自动化,参考度娘写出框架demo却不知道问题出在哪里的测试人员,已经不能满足企业快速迭代产品,保证产品质量的需求。当一个产品越来越庞大、用例越来越多,用例如何设置、脚本如何规划、代码结构如何优化,当需求变动时又如何做到高可维护、高健壮性的问题会接踵而来。所以,一名优秀的测试开发工程师是必须具备优秀的代码能力,甚至知识面是需要比普通的开发人员更广的,比如他需要熟悉自动化测试、服务器部署、网络架构、软件性...
            0 0 3978
            分享
          • 测试目标测试网站最常用切最重要的几个部分,然后找出其中缺点,通过不断总结后改进缺点。测试信息此次测试分为二分式任务和等级成功任务,其中有3个二分式任务,两个等级成功任务。二分式任务:此问题为测试当当网的“首页商品分类”的能力:在当当网的首页中找到“旅游”类的书籍并点击进入。此问题为测试当当网的“退换货系统”的能力:在当当网的首页中找到“自动退换货”页面并点击进入。此问题为测试当当网的“关联销售”的能力:在当当网“购买商品”中找到与商品相关联的商品列表。等级成功任务:此问题为测试当当网的“筛选商品指定属性”能力:在首页分类中找到“笔记本”页面并点击进入,找到8000-15000元的销售最高的苹果...
            0 0 2709
            分享
          • 到年底了,很多软件测试的朋友想要年初跳槽,去到一家更好的公司发展,但是在公司上班了,学习方面就会落下来,很多简单的软件测试题都答不下来了,今天我就给大家整理了10道最经典的软件测试面试题,给大家打打气。第一题:postman做接口测试主要是针对哪些功能点?回答:针对系统的增删改查功能会进行接口方面的使用,这样就需要做接口方面的测试。第二题:testin是接手工作后去接触的还是只是在上面获取报告?回答:testin是在功能测试之后,或者基本功能没有什么问题.主要就是用testin做兼容性测试,由于是云测,也是自动化方式的执行,所以会自动产出报告.第三题:linux测试环境搭建怎么搭建?回答:一般...
            0 0 2536
            分享
      • 51testing软件测试圈微信