近年来,越来越多的新人涌入软件测试这个行业,刚毕业的应届生就不说了,转行的也不在少数。
很多人抱怨说软件测试工作真是越来越难找了,公司的要求也越来越高。在这样一个大环境下,大浪淘沙,一不小心就被拍到沙滩上。。。
做过2年左右的测试管理,前后面试过的测试工程师也不下百人了,自诩有点面试经验。
站在测试管理者的角度,整理了一些初级测试(功能测试)必备的技能供大家参考。
功能测试,俗称点点点,很多人说点点点没技术含量,其实这个理解是不对的。功能测试是测试中最基础也是最重要的部分,设计高效的测试用例、吃透业务逻辑也不是件容易的事情。
自动化、性能等测试都是在功能测试稳定之后才进行的,功能测试做好了才是最无可替代的。
// 软件开发流程(研发管理流程)
常规的流程是:产品经理整理需求文档、绘制产品原型,并组织产品、开发、测试相关人员召开需求评审会议。
评审之后,开发人员开始编写代码,并进行单元测试;测试人员同步开始编写测试用例、评审测试用例。
开发完成并自测之后,部署到测试环境,测试人员开始测试,包括集成测试、系统测试等等。
最后验收测试(UAT),产品上线。
这个流程你要明白各个岗位在其中承担什么角色,具体做哪些事情。
//常用的用例设计方法
等价类划分法、边界值法、正交试验、因果图法、场景法等等,这些一定要弄清楚原理。大部分的测试都知道等价类划分、边界值法,但是很少有人把正交试验、因果图用得很6的,基本上只知道个概念。
咱们为什么要了解这些方法?设计测试用例可不是想到哪写到哪哦,学习这些是为了保证用例的准确率、覆盖率。
面试的时候,面试官也不会直接问你测试用例有哪些设计方法,一般会结合具体的场景考察你的用例设计方法和思路,比如一个输入框怎么测、用户登录怎么测。
公众号后台回复“用例”获取用例模板。
// BUG的管理及生命周期
了解BUG从建立到修复到回归验证到关闭的全流程。
// 软件测试模型
瀑布模型、V型、W型、H型、敏捷等等。这个面试的时候被问到的频率还是挺高的,一般不会直接去问你理论,而是让你结合工作经验描述你前公司的测试模型,或者更深入地问你这些模型的优缺点。
近年敏捷模型很流行,比较灵活,主张快速交付,我所在的公司采用的就是这种模型。
// C/S架构产品
即客户端/服务器模式,需要安装客户端和服务端的安装包,客户端依赖于服务端运行,两端均要进行测试,还涉及到软件安装、卸载、更新。
// B/S架构产品
即浏览器/服务器模式,在浏览器中运行,不需要安装。B/S架构产品对UI的要求更高。除了基本的功能测试,还要考虑浏览器的兼容性、性能等等
// 移动端APP
在移动端(手机、pad)运行。涉及功能、UI、软件安装卸载更新、设备兼容性、移动端特有的手势、横竖屏、来电干扰、弱网等等。
这里仅提供简要的思路,大家可以多找些资料进行深入学习。
// 测试工具
接口测试工具Postman、抓包工具Fiddler等(或浏览器的F12功能),接口/性能测试工具Jmeter(加分项)。
//辅助的管理工具
测试流程管理工具:如禅道、Bugzilla、TAPD(企业微信自带的工具)、JIRA、Azure DevOps Server。就我用过的而言,禅道和JIRA是比较好用的,可以登录禅道官网体验免费版的使用。
版本管理工具:SVN、GIT。用于管理多版本的代码、文件,这两个原理差不多的,学起来也很简单。
数据库操作也是开发和测试人员的基本技能。软件前后端的交互,本质就是数据的交互。
主流数据库MySql、SqlServer、Oracle,可先从MySql学起,SQL语句增删改查是必备的,还有嵌套子查询、多表联查,这些对于初级测试来说足够了。
学习的时候最好从建表开始,一个字母一个字母手敲SQL,一步步实操,查看数据的变化,这个印象才是最深刻的。
很多公司的产品是部署在Linux系统上的,作为测试工程师要掌握Linux常用的命令,正常能做到用命令查看日志、定位问题、会搭建测试环境就可以了。
了解网络协议,知道TCP/UDP区别、GET/POST区别。
如果你想面试初级测试或者普通的功能测试,那么了解以上足够了。若想进一步提升自己,那就去多学学自动化测试和性能测试,很多稍微大点的公司都有专门的自动化测试和性能测试人员,要求更高当然薪资也很高。
// 自动化测试
包括接口自动化、UI自动化,建议先学接口自动化, UI的改动最频繁、维护成本也最高,接口一般比较稳定,因此比较常用的是接口自动化。能自己编写框架或使用搭建好的框架编写自动化用例、执行自动化测试。
// 学习一门编程语言
可用于做自动化测试时编写自动化测试框架,做性能测试也是需要了解编程语言的。推荐Python或Java,Python对于初学者来说更容易上手。
// 性能测试
会做脚本跑并发、会性能监控、定位调优。
软件测试这条路,一路走来就像升级打怪,不断学习,就算成为不了大佬,也不至于成为被浪拍在沙滩上的那一个。
软件测试这条路,一路走来就像升级打怪,不断学习,就算成为不了大佬,也不至于成为被浪拍在沙滩上的那一个。
希望我的分享能帮助到你,我是墨石,喜欢请点个“在看”哦!
喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一 键三连哦!