前情简介
本集我们要讨论的是当下最火的测开主流- 服务端测试开发 !请点进来!
概要
【难度】******
【市场】******
【点评】这个方向在测开领域来说已经算是很难的一个领域了,相较于前端业务测开来说,服务端测开面临的数据上可发挥的空间会更大,所以面临的各式各样的需求也会更多,而且无论是基础还是见识都要又广又深,当然具体要学习什么我在后面文章会写,大家不要着急。这个方向的难度比较高,需要你付出一定的精力才能达到,不过一旦达到了,你也算是高枕无忧了,想去哪就去哪了,全组的核心人物,中流砥柱非你莫属。
这里要着重说明一下,服务端测开在通用技术上和前端测开部分都是重合的,甚至在实际工作中,很多小型公司的服务端和前端测开都是同一个人。而以测开大佬的水准来说,学习其他测试方向的技术也并不难,所以大多为了就业道路更多,会前后双修。
学习路线 (测开通用部分)
这里用python举例,其他语言小伙伴可以找同类代替函数。
- python的各种数据类型转化和逻辑分支,循环等。
- python的类和函数,传参返回等。
- 一定的算法基础,数组和字符串即可。
- 算法多刷,这个锻炼的是大脑的灵活度而非算法本身。
- python对其他系统的交互,如各种文件,其他服务器,os系统,数据库等。
- python报告和报警技术,有ui自动化的基础上即可。
- python的设计模式,工厂模式,单例模式即可。
- python的并发,线程,进程必会。
- 一个写web平台的框架,比如django
- django的基础理论,比如mtv模式是啥,orm技术是啥。
- 数据库增删改查,Linux端口号,内存,进程,文件操作,查看日志等命令。
- web平台的具体分层,比如逻辑层,数据层,业务层等。
- python发出http请求和接收处理的规范,requests库。
- 前端html的dom层:需要学基础元素,如输入框,按钮,div等标签和他们的属性。
- 前端css,不用学太深,但要明白局部和全局怎么设计,还有可以抄到其他优秀样式,可以进行样式更改。
- js、jq。二者结合使用,都不用学的太深,只要会基本数据类型和循环遍历,定位元素,获取元素的值,jq选择器,还有如何发送http请求,还有调用浏览器函数,如弹窗,刷新等即可。
- vue/react等封装框架,可加速你的前端开发,但仍然需要js/jq作为细节补充。
- 静态资源引用,你在资源网站上看到什么优秀设计,都可以直接下载后为我所用的能力,具体可以看我公众号中经常写这个。
- 平台的设计,具备一定的产品思维,和用户使用者进行交互,如何减少使用成本,增加流畅感,减少理解学习时间,提供更多的可视化交互统计,和抓手赋能等。
- 多用户直接的隔离和合作能力,比如ui自动化平台,什么脚本可以大家共用,什么脚本必须设置独享,这些平台都要提前设置好。
- 权限管理能力,做好权限管理的意义比功能本身还大
- 数据量化展示,测开工具/平台的生态建设。
- 运维/客服 能力,后续的平台维护,意见收集全要靠你了。
- 找业务痛点和需求,立项的能力。
- 舌辩群儒开会撕x的能力。
相较于前端业务测开需要额外掌握的技术部分
- 首先就是并发和大数据处理能力,在接口的密集数据中,此要求远超前端测开的平台等。
- 平台/工具的开发,要注重数据展示,从数据图形中得到知识。
- 因和linux/sql打交道甚多,所以这俩方面的技术要精通
- 接口追踪设计,错综复杂的接口和混乱的覆盖,你需要想办法梳理,比如在线上监控报警后,你可以第一时间知道是哪些接口引起,牵连到了什么模块等。
- 要有一定能力看懂开发的流程,习惯和代码,比如你做代码diff,连开发的代码在哪些文件都不知道,一切都是空谈了。
- gitlab技术需要学一下
- jenkins技术也要学一下,不一定是我们做的平台需要通过,而是要能从这些上面赋能开发同学的代码。
- 接口的极深知识和网络七层协议相关。
- 了解一些中间件的部署和用法,比如rabbitMQ,kafka,radis等。
- 适当引进新技术,行业内层出不穷的技术等都需要指着你引进。
在大多公司来说,服务端测开都代表了最高或几乎最高的技术实力,全测试组一旦遇到疑难问题,大多会直接交给你处理。所以及时的应变能力也是很强的,如果自己解决不了也要有足够的交流圈子和人脉来请别人解决