你眼中的软件测试岗位是怎样的?大部分人可能会给出这样的回答:“测试?简单啊,没什么技术含量,无非就是看需求、看业务手册、看设计文档、然后点点功能是否实现,麻烦点的就是测试下部署安装是否出现兼容性问题等 。”没错,不可否认这是你踏入软件测试行业的基本要求,但是互联网时代在飞速发展,APP已然生活化,如果你仅仅只会功能测试,必然会限制你的职业发展。下面小编就来总结下软件测试员面试的必备技能。
软件测试基础知识
这一点是一名软件测试员的必备技能,也是最基础的。如果你有一年以上的工作经验的话,对这一块一定有比较清晰的认识,当然,在实际的工作中不需要你对每一种测试方法去寻根求源,知道这些方法的含义与应用场景即可。
编写各种测试文档,对于初学者来说稍有难度。但终究还是谈不上什么技术含量,如果对业务和流程足够熟悉,文档用例自然就会写了。
测试技术
针对高级测试岗位需要一些有针对性的测试技术类问题。
1、例如,针对前端测试岗位,在技术提问上会有针对性地在前端提问,没有自己写过前端程序的人也很难把前端测试做好,html/css/js/Wartir/Selenium/Webdriver等方面的知识必不可少,开源的工具没用过,没有关系,你只要能把类似的思路说清楚也可以。怎样精准定位web页面上的元素、如何得到这个对象而不是另外一个相同类型的元素、背后原理是怎样的,等等这种有针对性的问题很容易试探出候选人在前端测试方面的技术深度。
2、例如,一个测试工具开发的候选人必须知道框架、工具、平台的区别,框架如何提供接口给业务测试人员使用,哪些是框架要解决的问题哪些是业务测试自己要解决的问题,他们的问题域和解决方案都必须要了如指掌。
3、例如,针对自动化测试,什么情况下适合做自动化?你的自动化测试用例是怎么写的?什么样的用例适合转成自动化?你是如何来实施的?有什么样的策略来开展自动化工作?你需要自动化在项目中达到一个什么样的预期和效果?只是学学工具,拿个例子练习练习。很难对这些问题有真实的理解。
4、例如,针对性能测试,测试流程是怎样的?你做性能测试的目的是什么?新系统验证?还是旧系统扩容?需要达到一个什么样的预期?在独立的环境可以开展么?压力在哪儿,脚本为什么要这样录制?你的测试结果真的有意义么?或对系统性能做出了合理的评估,或为系统有调优做出指导,或为系统扩容做出了依据。如果前因后果弄不清何必去做呢?
5、类似地,在单元测试、api测试、安全测试、手机测试、后端服务测试、大数据测试等方面,都会有针对性的问题等着你。相比较代码能力,面试官一般更看重测试技术本身的掌握能力,代码能力只能说明你有潜能,而测试技术是未来会在项目中真实用到的技术,会真正地帮助到测试本身的技术。
编程能力
如果是开发人员,那么编程能力是必定会考察的,而且是重点。据了解,现在的互联网企业,特别是一些大厂,对现场上机编程甚至白板编程,基本都是必须的。
关于这点,业内还有个梗:Homehrew的作者马克斯.霍威尔(MaxHowell)去Google面试时无法在白板上翻转二叉树,从而Google面试没通过……
大多机智的同学也会在简历的必备技能最下方面写上一条,熟悉Python、C语言或其它某种语言。
划重点!如果在编程能力上略懂一二,面试官也会给你加分。懂编程和不懂编程的人看系统的深度不一样,一点不懂的只能看出来这是按钮,那是输入框。懂编程的就知道你的登录是个<from>,输入框是个 <input>,你的登录提交是用的post 还是get呢?逻辑层就是获取到输入的用户名密码是查数据库做比较嘛。在测试过程中不管功能实现也好,bug也好,都会看得更透彻,从而更容易挖掘出相关的bug。
工具使用
关于这点,开发工程师对工具的使用熟练程度,面试中问到的几率我不太了解。
但对于测试工程师,特别是性能和自动化岗位,使用什么自动化或者性能测试工具,技术框架如何设计,在面试中就被频频问到。满大街的招聘要求上都写着“要求熟悉jmeter、LoadRunner、Selenium等自动化测试工具等。”虽然不是每个公司都用的到,但是既然这么多公司有要求,还是有必要学一下这些工具的。
LoadRunner、jmeter做测试必玩工具。没摸过jmeter都不好意思说自己是做测试的。性能测试必须要借助工具来实现,不借助工具如何模拟成百上千的并发?而且熟练地使用工具可以在日常工作中带来较大的效率提升,这也是不可忽视的作用。
其他技能
除了技术以外,沟通能力、团队合作能力、执行力、是否容易相处等性格问题也是面试官额外会考量的!
以上内容为大家介绍了软件测试员面试的必备技能有哪些,本文由多测师亲自撰写,希望对大家有所帮助。
标签:必备,编程,面试,测试,自动化,工具,软件测试 From: https://www.cnblogs.com/lfc666/p/17072057.html