身为测试人,如何转型测试开发?(二)

发表于:2023-1-13 09:42

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:质量君    来源:软件质量保障

  测试工程师如何转型测开

  3.1摆好心态&开放眼界
  我始终认为掌握技术最重要,title不重要。测试工程师和测开只是title不同,工作内容并没有明确的边际,这个完全取决你对测试的看法!
  有可能一些公司的测试工程师做的是某些公司测开的干的活,而一些公司的测开可能做的是某些公司测试工程师的活。
  就像我在字节时候,title是测试工程师,工作内容是业务测试+接口测试平台开发7/3分。而在阿里则也是差不多(甚至阿里的业务还更重些)。
  对于我来说两家公司的工作内容是没什么区别的,只是title不一样而已。
  对于想转测开的测试工程师建议:调整心态,不要以“测开”唯是,提升自己的技术能力才是重点。
  要养成持续学习的习惯,多接触一些知识,拓展自己的眼界,在业务测试过程养成“偷懒”的习惯,多思考自动化手段减少手工测试工作。

  3.2夯实基础&运用技术

  1)编程能力要过关
  至少精通一门语言。而且使用该语言开发过工具或平台最佳。
  一是测开面试通常要编程写代码,这个是门槛;二是有开发经验能侧面证明你对开发语言的熟练程度。
  至少掌握一个开发框架。例如spring boot、flask、Django等。

  2)基础算法要熟悉
  学习的同时建议结合LeetCode练习。
  1.快速排序算法
  2.堆排序算法
  3.归并排序
  4.二分查找算法
  5.BFPRT(线性查找算法)
  6.DFS(深度优先搜索)
  7.BFS(广度优先搜索)
  8.Dijkstra算法
  9.动态规划算法
  10.朴素贝叶斯分类算法

  3)有所专长(亮点)
  前文说到过的一个道理,人无我有。在大家都掌握相同“技能”的前提下,你能做的更深入或者有别具一格的idea,则这就是你的亮点。
  例如擅长性能测试、擅长效率工具开发、擅长平台搭建等。当然这个因人而异,视各人兴趣点而定。

  4)多利用技术手段解决业务问题
  我认为这个是最重要的。纵然你掌握上述能力后,但是缺乏运用技术解决实际问题的能力,仍然是纸上谈兵。
  正如第2节所说的,测试开发岗位职责都要求解决复杂问题的能力。而我在面试中问到的最多的问题就是:为什么做这个东西?你这做的东西解决了什么问题?
  后面我会附上面试经验分享,里面包含所有面试题目。而如何提升解决问题的能力,第一步就是要善于发现问题,这就要求工作中大家保持怀疑心态。

  3.3“创新”意识
  不可否认创新是属于少数人的专利,但是并非大多人不能创新。
  作为普通大众的我们可以二次“创新”,将前人作出的成果二次创新运用到我们的业务中并解决一定的问题,我觉得对于普通人来说这就足够了。
  如何保持开放心态?建议大家多参加测试沙龙和论坛,业界比较专业的测试论坛如:每年两场的MTSC大会,议题质量是相当高的,基本都是BAT议题占了半壁江山,可以说BAT的议题成果就是国内测试界的发展标杆和方向(虽然BAT的议题可能是别人玩剩下的)。
  此外,关注各大厂的技术公众号,多看看他们发的文章提升眼界。

  3.4我的阿里测开面试题分享
  我把三轮技术面的题目(不完全统计)分类整合到一起了,大家凑合看。

  技术题:
  1.了解多线程吗?了解Python的GIL锁吗?
  2.说一下进程和线程
  3.进程间通信的方式有哪些?
  4.说一下什么是乐观锁和悲观锁?
  5.AOP
  6.什么是IOC?
  7.list和map相关
  8.解释一下工厂模式?
  9.内存泄漏
  10.会做性能测试吗?容量测试/稳定性测试?
  11.Python2和3的区别?
  12.DNS解释一下?
  13.用户名、密码、验证码哪个校验顺序?
  14.Linux根据进程查端口/端口查进程
  15.常用的Linux指令?
  16.排序算法

  围绕工具开发:
  1.工具是如何开发的?
  2.为什么要开发这个工具?
  3.公司内部没有类似平台吗?
  4.效能工具包含哪些?举几个例子?
  5.介绍一下自研的接口自动化框架?
  a.有哪些模块组成?
  b.相比其他框架有哪些优势?缺点有哪些?
  c.介绍一下框架的代码生成模块是怎样实现的?
  d.使用你的框架测一个接口需要做哪些步骤?
  e.接口的断言怎么做?
  f.接口测试带来的收益?
  g.testng和junit优缺点
  6.造数据工具,如何开发、提效多少。

  大数据测试:
  1.怎么测试数据的准确性?

  算法测试:
  项目经验:
  1.算法测试做哪些工作?
  2.如何进行算法评测?
  3.不同的算法类型,评测标准是不同的
  4.介绍一个最近的算法测试案例?
  5.如何选择测试集?测试集的特征如何选择?
  6.说一些算法测试发现的badcase?
  7.如何保障算法质量?

  编程题:
  1.线程交替打印奇偶数
  2.最长回文子串

  项目经历:
  1.介绍一下负责的项目?
  2.针对老系统(有很多僵尸代码)如何保证质量?
  3.做过的项目遇到的最大风险点?
  4.怎么保障项目的质量?
  5.如何处理紧急需求?
  6.项目的迭代方式?
  7.说一下最近项目推动成功的案例?
  8.说一下自己人力分配?

  持续集成:
  1.了解CI吗?解释一下CI
  2.如何衡量测试用例质量?
  3.说说你对测试的理解?或者说质量的理解?

  团队管理:
  1.团队管理上有没有什么难点?
  2.你期望一个怎样的测试团队?
  3.团队的测试开发比是怎样的?
  4.如何衡量全职/外包比例?
  5.外包的忠诚度如何保障?
  6.你能为团队带来什么?

  HR问题:
  1.为什么跳槽?
  2.为什么选择阿里?
  3.前几家公司收获
  4.有什么问题要问的?
  5.工作中最大的挑战(最大挫折),如何克服的?
  6.最大的优点和缺点?各自说一个?
  7.未来的职业3-5年发展规划?

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号