我会 python,能写测试框架,一些工具,算不算。
关于测开有没有必须会的语言
测开,个人理解是能通过技术手段解决业务质量问题的人群。
要能用技术手段解决业务测试中的难点,提高人效,也就是能通过技术手段做到降本增效
想象是美好的,现实是讽刺的
现实真正的测开就是那种不用碰业务测试,却能专心捣鼓对项目没多大用倒是对他很有用的开发工作,完事后还会把业务质量归功于他那堆玩具,再鼓励业务测试多学习的人,就是测开了。
从之前面试经验,现在会自动化测试(含框架封装)的测试非常多,有的 title 会是纯业务测试,有的会是测开。这个没有绝对,取决于公司定位。
但一般来说,测开至少在开发水平上,搞个自动化框架、自动化平台是没啥问题的。不知道楼主这里的测试框架和工具是复杂到什么程度,不大好评估算不算测开。
以下纯个人理解,仅供参考:
在之前,测开有两个大的类别,一类是业务中的测开,一类是纯工具平台的测开。
业务中的测开,主要就是稀饭说的 能通过技术手段解决业务质量问题的人群 。这部分一般属于业务测试团队里技术水平比较高的,技术视野也广,能想到和落地一些技术手段来切实解决业务质量问题。常用的技术包括但不限于
纯工具平台的测开,主要偏开发,主要是完成一些技术复杂度高的测试平台的设计、研发。这类在很多公司里也称为 “工具组”,一般只有比较大的测试团队才会存在,主要解决业务中测开日常需要兼顾业务测试,工具平台产出相对慢的问题。
不过随着时代变迁,现在剩下的主要是第一类测开,大厂现在招的基本也是这类型的,既能负责业务测试,也能兼顾通过技术手段保障质量。第二类随着大的测试团队减少,以及开源平台工具越来越丰富,从零到一研发必要性降低,会越来越少。
不好意思,随口的回答的确有点太抽象。可以参考 6 楼恒捷的答案,已经是 100 分答案了。
技术方向上,如果不考虑具体业务属性的技术:
老哥,我就是第二种,快 30 了,感觉有点危机感,有什么比较好的办法吗?目前我是往第一类方向去转,但是实际上,我本人没有测试经验,以前转测开,也是纯开发转过去的,呆的团队,虽然也都是测试团队,但是我对测试上的流程啥的,真的是一窍不通,平时都是钻研技术跟解决业务测试问题,没有实际的业务测试经验。
@ZFW 的意思是: 大厂的标准模式就是一个正式的带一堆子公司和外包的模式。 正式员工很少来执行手工测试用例了, 只有一些难度比较高的,无法让外包和子公司人员来执行的测试会让正式员工来。 其他的工作正式员工主要是制定测试方案,开发测试工具,管控测试进度这样的事情。 所以按你的标准,大厂里正式的测试人员都是不务正业的。 你的观点过于极端了。
然后我的意见是业务里的测试开发挺常见的, 自己业务的测试工具自己来开发,简单的交给外包来执行,困难的交给子公司或者自己来执行。 完全不碰业务的测试开发即便在大厂里也是很少见的。就像我们测试模型是完全没有图形界面的,甚至连个 http 接口都没有,只能调 SDK 或者 gprc 和 trpc 协议来测试。 所以即便其实测试用例挺简单的, 就把数据给模型然后通过结果统计评估指标么。 但没有代码能力的外包人员, 你让他们写 trpc 调用实在太难为人家了。 所以我们正式员工来写工具,外包只需要按场景挖掘数据,审核数据,与算法人员讨论 badcase 等等这些事情。 这是一个在业界里十分有效的工作模式。 尤其是在降本增效的大环境下,已经是主流的方法了。 就算是那种完全不碰业务的测试开发,也是在一个单独的部门里, 他们负责的是大部门级别,或者公司级别的测试基础建设,并不是大家理解的随便开发个跟 pytest 差不多的框架,那是小厂子里的人搞过家家的手段,大厂里的这部分人要负责打通网络,环境,权限等关要(在大厂里,环境不是那么好搞的,不同的云里面, 不同的机房里,IDC 里,公有云,私有化,开发机,这些环境的网络可能都不通,权限可能都是不开放的,做测试的时候就需要有相关的基础设施来搞定这些,因为这不是给业务团队开发权限和网络来做的, 这事关安全)。 当然确实有些不误正业的地方跟过家家似的搞个类似 pytest 的框架,封装个前端就当平台的。 但在大厂里,人家测试开发部门就不是搞这些小家子气的东西的。
所以有一些人不务正业搞花活这种情况是存在的, 但别太极端, 还是有很多的测试开发在认认真真为公司提供价值的。
我应该就是楼上说的那种纯粹的测开,负责测试基建。需要什么做什么,包括不限于自动化测试平台、造数平台、代码覆盖率、流量回放、app 专项及云真机等等。你要说真的全部都有用吗,不见得。但要说完全自嗨,那有这些和没这些,区别还是很大的。
做这些需要的能力除了掌握前后端开发能力外,最重要的是设计能力,很多写过简单测试工具的人自以为写测试平台就是单纯的 crud,其实还是没摆脱写脚本的线性思维,甚至很多硬编码。测试平台也是一个产品,好的产品架构和技术架构在后期的 1 到 100 的扩展中是很重要的。另外,为了避免出现自嗨,做这些之前还是要贴合自家公司的业务以及技术现状,这也是为什么即便开源工具很多也不断有轮子出现,因为通用型工具真不见得适合当前公司或团队现状。
至于职业生涯问题,我觉得别考虑太多。既然决定走这条路,就做好 35 岁失业的准备,运气好点到四十岁。再者说,就算在互联网做别的,又有几个四十岁还有一线工作的。车到山前必有路,不干互联网难道活不下去了?
另外,纯粹的测开有一点好处就是不卷。因为不直接和业务打交道,我所待过的公司基本都是到点下班。干测试或者测开都只是谋生的一种手段而已,不要看的那么重要。
"但在大厂里,人家测试开发部门就不是搞这些小家子气的东西的。"
大厂的测开真的人均都在搞责打通网络,环境,权限等关要这些?,咋感觉听起来有点离谱。。。
这个看你未来发展规划吧。
可以先看下有没有机会,去业务测试团队轮下岗,测 1-2 个项目体验一下,看自己想不想往业务方向走。
如果想,那就逐步增进这块的能力,熟悉业务并通过有效的技术手段控制住业务的质量,以最终业务质量有没有提升为结果。
如果觉得不合适,那就往开发方向转。开发里面也有基础架构平台或者研发效能平台这类开发岗的,你在测试平台的一些经验可以迁移过去,比完全从零到一重新开始好一些。
还有一种,就是考虑弄个开源项目并运营起来,在行业内获得一席之地,这样可以获得更多机会,不完全绑死在你现在的公司、现在的岗位。
PS:我听你的描述,连测试流程都不大涉及,感觉像是纯实现需求的开发,对于需求这块的了解还比较少?如果是,可以先在这方面提升一下吧。多和业务测试团队同学交流,了解整体测试流程体系,也培养下自己的思考能力,能从业务诉求里面提取出有效的需求,并设计对应的高性价比解决方案。
跟恒捷说的一样, 只有很少一部分人是在这种不碰业务的测试开发部门,我上面也说过大部分测开都是在业务里的, 自己开发工具, 简单的交给外包用, 困难的交给子公司或者自己用。 现在大厂业务部门里也基本没有那种只开发工具不做测试的岗位了。 我自己也是, 别看我现在级别上去了, 但是我还是需要在一线搞测试的。
测开就是测试为了给自己找个高薪一点的 title,本质上是测试没什么区别。如果是做平台的话,那就不是测开,那就是正式的开发岗,所以你能看到大厂质量部门都是直接招开发岗。
能洞察质量、能效等问题,通过分析,制定并落地计划。 这个计划可能是大家常说的,自动化测试,工具开发等, 但这仅是包括,但不局限。
看来每个公司或者每个人对测开的定义都不太一样
测开==测试测试干到干到就被开除了