我只想找个功能测试,面试官却把我逼上了绝境……结果顺利通过!
现在的测试都需要会用8种语言来写Hello World!测试开发的等级也分的越来越细。所谓“点点点”的功能测试员,是否没有出路?我就是一个功能测试,工作内容包括“点点点”,但得知道从哪里入手点点点,和借助什么工具。
很多公司面试人都是:面试造火箭,工作拧螺丝。作为一线大厂,我遇到的面试官并没有遇到过这个情况。我很幸运的没有被“虐”,也顺利入职了一座伟大的公司。下面说一下面试过程。在叙述面试过程中,我会结合入职后工作的一些工作内容。
我是通过内推面试了2个组。第一个组没有通过。因为当时还不会代码,所以对于测开的职位,肯定是没办法通过了。第2个组是招聘T4以下的功能测试,又是内推,内推的两位同事在组内也能说得上话,于是我得到了这次面试机会。
上来先做了一套面试题,是我工作所在的组长(也是我的面试官)出的套题. 题目中有抓包工具的使用细节;一个BUG描述的具体内容;性能测试自己所知道的方法;一个windows任务管理器的错图,需要找它的BUG。还有些其他概念题,具体的记不清了,大概是:V模型的测试类型,迭代-增量开发模型描述,每个测试级别,都需要明确哪些内容等等。组长将考题给我之后就离开了。
作为“资深面试”者,我深深的知道这时候打开手机搜索答案是没有任何意义。面试的内容和结果,答题只占很少的一部分。如果你通过搜索写出的答案,越详细,越全,越官方,被口头提问时答不上来就肯定失败了对吧。于是我全部都根据自己脑子里的东西,答的题。半个小时候,我的组长准时回来了。看了我每个题后,开始口头提问,并没有再看那张正反面的卷子。
首先是叙述抓包工具的实际使用场景
我选择了日常做的最多的那些叙述,做的少的没敢说,怕被问住:
(1)更改host;
(2)埋点上报;
(3)Windows端测试环境软件的自启动: 将fiddler和被测软件都加入到windows的自启动菜单中(在开始菜单中“自启动”右键进入文件夹设置)。将 fiddler配置好host之后重启电脑,电脑重启后会自启动fiddler和被测软件,即刻测试开机后的在测试环境软件自动升级等操作。
在后来的工作中,使用抓包工具做了“下载按钮应判断是否已安装指定APP,不需要重复下载”;自己创建ini配置文件,自己签名,自己打cab升级包,重定向到本地,将ini.update和dl接口重定向到本地的文件,进行模拟服务端升级等等。如果这种通用技能能在面试时多说出来一些会加分。
接下来是性能测试所知道的方法
我由于之前一直是客户端或者终端的“点点点”测试,所以都是基于UI的。其中有大家都知道的:
(1)使用高速摄像机进行录制。数帧,加机器手进行模拟点击;
(2)adb命令加批处理进行模拟点击屏幕坐标,为了“美观”加入间隔等待ping 127.1 是自己的主机
-n 6 ping6次,花费时间大概为5秒左右
>nul 不在屏幕上显示ping的运行结果。如果不加>nul也没有影响
(3)我把Monkey也算在性能测试里。如果没人告诉我该应用的启动activity是什么的时候。 Logcat中搜”cmp=”: 找到应用的启动activity.
(4)查看CPU使用值,查看内存使用。
我的组长问我压力测试有什么实践吗?我说很少,基本也都是adb命令坐标点击,比如拍照500次;或者长时间持续的执行一个操作。因为我不会识别页面元素,不会抓元素来精准点击。我的组长说了,你没想过“挂机”也是压力测试的一种吗?我顿悟……压力测试是无处不在的。
安全测试的思路
作为国内做安全最好的公司肯定要问一些安全测试的题。我将我准备的安全测试的思路说了一些:
(1)查看这个APP进程中,有没有存在debug和info log.
(2)清缓存后,登录不上,说明没有残存cookie.同一账号,记住密码,连续登陆几天,看会不会生效,cookie有时间限制;登陆失败后,不能记录密码的功能.
(3)登录成功后生成的Cookie,是否是http only?,否则容易被脚本盗取,使用火狐的cookie Manager.
(4)在地址栏直接输入各个功能页面的URL地址,看系统如何处理,是否能够直接链接查看(匿名查看),是否有权限控制,是否直接执行,并返回相应结果页
(5)错误登陆的次数限制,防止暴力破解
(6)用户名和密码是否通过加密的方式,发送给Web服务器.
(7)什么都不输入,点击提交按钮,看提示信息。(非空检查)
在这儿工作之后才知道,“安全”是从产品到研发到测试到运营每个人都极度遵守的意识,更不用说严格的代码提交规范,安全审核流程,48小时必须修复安全问题的红线制度等。具体的验证项目不能详细说属于保密内容,但它是真真正正的安全之王。
服务端相关
虽然以前的测试工作肯定有服务端的交互,但是我们都管它叫:云端配置,等等。没有真的接触服务端,看接口业务之类。关于服务端的提问,我没有答上来。我的组长没有因为我只是来面试的,而忽略我的测试知识获取。主动给我讲了:一个新接口的测试,除了服务端逻辑测试,客户端容错测试也很重要。当客户端对返回值不能进行容错,如服务端给的规定逻辑是6,拦截接口后手动设置了999,或设置的频率为1,拦截接口后手动设置0,或null,也许会出现异常内存泄漏,应用崩溃dump。
我清楚的记得我当时是假装听懂的,不停的点头说原来是这样啊。其实根本没有任何轮廓。后来实际工作中发现,原来这么简单这么基础。所以面试时候这一点要说上来哦。
其他的关于数据库,代码类,我都没答上来,当时是真的不会。但这个一定会被问,哪还会有不用数据库的测试呢?哪怕是本地的测试数据库也要会操作。软件测试基础概念,我能说的比较全。最重要的是,我真情流露了对大厂的爱。我组长后来跟我说,也是因为我十分爱大厂所以才破格录取的我。
这就是这次面试的部分经验。并没有写的很全,毕竟涉及一些保密。但此次面试就是拧螺丝,实际工作也是拧螺丝,所见即所得,非常的实在!从而也证明了,只会功能测试的测试老阿姨也是可以入职大厂并顺利工作的。在大厂中学会了很多工具的使用,为功能测试增加了很多辅助。由于功能测试更顺利,所以更有时间和机会去进阶测试开发,学习代码了。
欢迎加入 51软件测试大家庭,在这里你将获得【最新行业资讯】,【免费测试工具安装包】,【软件测试技术干货】,【面试求职技巧】... 51与你共同学习,一起成长!期待你的加入: QQ 群: 755431660