
本文为霍格沃兹测试学院优秀学员笔记,测试开发进阶学习文末加群。
本人本科毕业之后,就入职了安防行业。安防行业测试方法主要是以手工测试为主,测试的技术栈非常落后。如何从手工测试进阶测试开发以谋求更好的发展呢?机缘巧合之下,在知乎看到了学院的课程。试听之后,便毫不犹豫的报了课程。通过学习,明确了未来的发展方向。学院的项目实践,极大程度的加深了我对测开知识框架的理解和掌握。在这里先谢谢思寒等一众大佬授课解惑,安伶儿小姐姐对简历,面试的耐心指导。也分享一下自己的一点学习心得和成长经验。
在接触到学院的课程之前,我有接触过一些测试开发的知识,但是不管从知识框架还是知识细节都掌握的很模糊。举个最简单的例子:我一直在用python写脚本,但是连python的运行过程都不清楚。
作为往期的学员,我在一年多以前已经开始接触课程,和大多数人一样由于自身没有紧跟课程以及懈怠,直到收到到课率的时候我才猛然惊醒。于是在去年十月份的时候我就下决心先把课程学完,并计划在一月份开始投简历。经过三个月的学习,我将课程中的项目都做了一遍,并使用pytest相关的知识逐步取代部门之前使用的robot框架,这也给我敢于进大厂奠定了心理基础。
在熟悉完70%的知识之后(因为没法百分之百的看完所有知识,通过面试去促进自己补充知识对我来说更高效),我找到安伶儿修改简历,内推(不得不说大佬真的尽职尽责)
在面试的过程中,面试官一般会根据招聘需求,结合简历来进行提问。提问的知识面,真的是非常广的。这里不得不说,大厂的面试官,本身就是很精英的存在。根据面试过程中提问的问题,大概可以分类成以下几类问题:
数据库: 查询,主键外键索引,另外了解下数据库的设计原则等等
操作系统: 进程线程,死锁,进程调度,进程同步等等
用例设计: ui端用例设计,接口用例设计,白盒用例设计(了解)
**协议:**tcp,udp,http,https,dns,arp等等,涉及到自己行业的协议也要有所了解
Python: 类,数据类型,装饰器,了解进程线程协程等
自动化相关知识: pytest,ui自动化,接口自动化(跟一遍学院的课程,做一遍项目基本就没问题)
Linux操作系统: 常用命令,linux三剑客,了解一些linux相关的配置,文件,权限相关知识
持续集成: jenkins,docker,跟一遍课程基本够用
数据结构和算法: 数组(排序,二分),链表(相交,反向,成环等),栈(入栈,出栈,括号问题),队列,二叉树(前序,中序,后序),堆(堆排序),图
项目: 简历上的项目一定要多次熟悉
其他知识: restful,web架构,分布式,nginx,Apache,自己所处行业的知识与面试业务线交叉的知识点也需要重点关注
由于大厂的算法是个门槛,在没有准备好的情况下面了某大厂,二面直接挂掉,当时心里还是有落差的,觉得算法题太多,而且没有基础知识的情况下,刷leetcode很难理解,多亏了学院给了相关的学习资料把对应的课和题都看了一遍,后面的算法题也基本在射程之内了
第一次大厂面试之一面
总结:从个人经验看,一面基本是基础知识,面试官看的是你的知识广度,回答的时候尽量主动。比如在回答“url输入发生什么” 如果你了解dns和其他相关知识,要主动分享你的理解,这样面试官会对你有一个好的印象,同时会觉得你对基础的掌握很好,有的问题甚至不会再问你了(面评好即使后面没过,被其他部门捞起来的概率也大)
第一次大厂面试之二面
总结:二面挂,主要是缺乏算法和操作系统的基础知识,后面复习之后发现难度并没有想象的大
第二次大厂面试题:
在第一次被挂掉之后,对算法进行学习,当时信心满满,但还是二面挂,挂在了测试方案上
第二次大厂面试之一面
总结:不知道是不是第一次面试基础答得比较好,这一次没怎么问基础知识,主要问的项目
第二次大厂面试之二面
总结:这里就体现了传统行业和互联网测试的差距,传统安防不涉及到高并发等场景,我自己讲项目的时候又提到了,所以给自己挖坑了,大家在将项目的时候一定要结合自己的实践项目,一知半解的东西尽量不要提
第三次大厂面试之一面
经过第二次面试,我把互联网相关的视频测试了解了下(一面就用上了)
一面:
第三次大厂面试之二面
第三次大厂面试之三面
第三次大厂面试之四面
大厂面试总结
总结:在复习和学习的时候,看了课程,csdn,掘金,各个厂的技术公众号之后要进行输出,比如写文档,写博客,做项目,做公司分享。
最后再次感谢学院开设的课程,各位大佬的指点。如出发必到达,希望各位也能尽快学习找到期望的工作。