一、从知识储备来说.
大多数人进入软件测试这个行业大多都是从功能做起,当然软件测试也会细分为功能自动化,接口测试、性能测试、安全测试等等。
先说如何做好功能测试,需要的掌握的技能有计算机基础,不能连最基础的电脑操作都不会,一般软件的安装,网络调试,计算机基本理论都是最最基础的,再接着需要掌握软件测试方法,这是软件测试人员的基础也是核心.
面试时经常会问到你们项目里的某某功能测试点,或大家常用的软件(发红包、微信分享、自动售货机)的测试点,这就需要多锻炼测试思维(也就是破坏性思维),考虑全面,面试官才会相信你,才放心把公司软件全权交给你去测试,否则你经常漏测,那出了问题,测试一般会背锅的。
软件测试工程师在测试工作中,经常会用到数据库和linux,用到数据库一方面是去验证功能是否正常,因为操作产生的数据,以数据库为准,另一方是方便测试人员构造各种需要的数据,方便测试,用到linux,一方面是服务器大多是linux系统的,需要测试人员登录去部署环境,查看日志等操作,另一方面需要做些简单的编程,还是为了辅助测试工作。
面试官也经常在面试中问到数据库和linux知识,关于数据库,会构造几个表,让你用sql语句去查询出某些条件的数据,关于linux会问查询日志,部署环境的linux命令等等,如果这些会的话,让你测试如鱼得水。
再说下功能自动化,需要掌握的技能,一般需要有编程基础,如会基本的语法,有基本的编程思维,如能代码实现排序、去重等。会搭建测试测试框架,会使用常用工具,如网页自动化selenium,手机app自动化appium等。
接口测试,需要掌握的技能,如接口测试理论和方法、用例设计,集成工具使用,接口测试工具如postman、jmeter等。
性能测试掌握性能测试基础理论,分析系统性能瓶颈,常用的性能工具如loadrunner、jmeter、perfdog等。
二、从职业素养来说.
测试工作一般需要细心、耐心、责任心,沟通表达较好,学习能力强、较强逻辑思维能力。
细心,才能多发现bug,软件测试是需要一直迭代的去使用软件,没有耐心能把自己测吐了,有好多学员很喜欢玩游戏,找了个游戏测试工作,后来说以后再也不想玩游戏了,软件测试是软件发布的最后把关人,一定要担起责任,
测试人员在工作中要经常与开发、产品沟通,也有时与客服、客户、运营等人员沟通,有效沟通还是很有必要的,
软件测试发展有时需要用到新工具,有时业务逻辑也很复杂,需要测试人员能很好理解需求,会使用新工具新方法验证软件,这需要有较强逻辑思维能力。
这些在面试中也会经常问到,如通过让你自我介绍、说做过项目、说工作中问题、说发现的bug、分析逻辑思维题,这些考察都是出于这个目的。
三、软件测试人员需要技能还是挺多的,当然很多也是浅尝辄止,原理都是想通的,通过原理指导实践,可以以不变应万变。