• 5
  • 10
分享
  • 当一个测试工程师准备找工作,需要准备什么?
  • 恬恬圈 2019-07-22 13:40:39 字数 3789 阅读 4658 收藏 10

一、前期准备:

关于投简历

需要意识到:一旦开始投简历,就是正式的开始找工作期了,你可能在投简历之后,时刻都能收到公司的面试邀请和电面邀请。所以,在开始投简历之前,就应该做一些基本知识的准备,避免仓促的接到电面和面试,因为没有表现好错过了好公司的机会。

面试的有些问题是需要临时突击背诵加强的,因为甚至日常工作涉及不到,涉及面也比较广,建议还是要提前做三到四个月的准备,如果是在职状态的话,这个时间其实并不是特别充裕,所以给自己做个计划时间表,选择一个开始投简历的合适时间。

设置个人的目标

确认自己的目标,自己有意向的公司以及可以接受的公司类型,针对性的做准备;不要海投,尤其对于已经工作一段时间的人,海投会导致你收到一些没有必要的电话。

当然目标也不一定是哪个具体的公司,所以要分析清楚自己的想法:关于薪资范围,工作强度、公司规模,行业方向,将来的职业发展等,这些也可以在面试过程中逐渐清晰,你可能在这些元素里需要接受一些东西放弃一些东西,要清楚完美的工作的是不存在的,大部分人里只能从自己能力范围里选择一个相对好的,当然能力越强,可选范围就越大

总结提炼自己的经历

你要审视一下自己的过去的工作,了解自己的优势在哪里,了解哪些是你对项目对公司做出的比较大的贡献,哪些项目值得一说,面试时有理有据说清楚自己的优势。

总结一下自己的工作优点,基于工作事实去诉说优点,更加使人可信。

裸辞or骑驴找马?

不到万不得已不建议裸辞,主要原因是对于你找的下一份工作有影响,从情绪上说,无工作状态下,人的焦虑感很容易增加,陷入自我怀疑,影响个人精神面貌进而影响面试状态,从而可能最后仓促定一个工作,另外,对于裸辞的人,谈薪的时候公司容易压价。

建议还是找准几个自己有意向的单位,集中几天请假面试,目前很多公司还是能够一下午走完全部面试流程的。

二、技术类准备

目前对于招测试来说,知识覆盖面比较广,以下做列举。

建议在面试之前记一下,不要轻视这些基本理论,我之前看到一些人去面试,连基本的网络协议都答不上来,哪怕可能个人能力技术比较强,但是在这种题目上被减分实在没必要

1.网络基础知识

TCP/IP协议四个层次组成,以及每个层的常用协议

  • OSI七层模型

  • TCP协议三次握手

  • TCP协议四次挥手

  • TCP和UDP的区别

  • HTTP和HTTPS的区别

  • 一次完整的HTTP请求过程(即浏览器输入url到看到网页过程会发生什么)

  • HTTP不同的状态码的代表意义

  • HTTP的请求方法有哪些,作用是什么

  • HTTP 请求方法GET 和 POST的区别

2、测试工具相关

  • 以Charles为例

  • Charles的工作原理是什么

  • Charles如何抓Https网页,IOS需要特殊注意些什么

  • 如何设置弱网(弱网速度具体设置值)

  • 如何设置断点,修改接口数据

  • 如何指定网络请求重定向到本地

3、常用ADB指令

  • adb devices 查看连接计算机的设备

  • adb install <apkfile> 安装apk

  • adb install -r<apkfile> 覆盖安装

  • adb install -s <apkfile>把apk安装到sd卡

  • adb uninstall <packagename> 卸载APK

  • adb uninstall -k <packagename> 卸载app但保留数据和缓存文件

  • adb logcat 查看log

  • adb logcat -c 清空日志

  • adb logcat *:E >D:\log.txt 输出到某文件

  • adb logcat ActivityManager:I *:s 查看应用包名

4、常用Linux指令

  • cd命令:切换到某个目录

  • ls命令:列出当前目录的所有文件、文件夹

  • pwd命令:列出当前目录的路径

  • cp命令:复制

  • mv命令:剪切

  • grep命令:管道

  • find命令:查找

  • rm命令:删除

  • ps命令:查看进程

  • kill命令:杀掉某个进程

  • cat命令:查看某文件

  • tar命令:打包

  • chmod命令:赋权限

  • chown命令:改变文件的所有者

  • vim命令:文本编辑

5、SQL

  • 基本的增删改查语句,对于select语句考察多一些

  • 子查询

  • 多表联合查询(join on)

  • group by 与 having基于聚合函数的使用

  • 去重,排序,模糊查询

  • MySQL中的join有几种有什么区别

  • 延伸:索引和视图

  • 列举几个常用的关系型数据库和非关系型数据库

(以上建议做题熟悉,leetcode或者搜索一些题目,面试考察方式一般也是面试官口述一个表,让搜索某种结果,所以要熟悉这种模式,而不是只是记忆语法)

6、移动端测试的基础知识

目前各个公司的测试工程师定义可能不一样,有的是全部涉及,有的是只做移动端,或者只是后台接口测试开发,如果个人发展方向以及找工作更多的是移动端测试方向,那么移动端的基础知识是必须要记的:

  • 安卓系统四层架构

  • 安卓四大组件

  • 什么是安卓activity,activity的生命周期

  • 首页跳转某页面后返回到首页,activity经历了怎样的过程

  • APP发生crash测试需要怎么处理(区分IOS/Android)

  • 你常见的发生crash的日志是什么

  • 什么是安卓ANR,如何避免

  • 安卓crash和ANR的区别

  • Android手机和IOS手机,系统有什么区别

  • App测试中ios和Android有哪些区别

7、场景测试题,给你一个登录/支付/列表等场景,如何测试

面试常驻问题,基本不管大厂小厂都会问这个问题,考察面试人的思维考虑广泛度,对于这个问题,每个测试人员可能都有自己思路和方法,回答的时候可以保证全面性的基础上体现自己分析问题解决问题的步骤,可以按照自己的想法,这里仅做列举

确认大前提:需求内容,需求背景,需求目标,对象用户,使用设备,使用环境

可大略概括为:功能,界面,性能,安全

1)基本的功能逻辑测试:等价类,边界值,数据类型,正常逻辑,异常逻辑,异常逻辑的良性提示,流程失败,各种场景,易用性等

2)设备兼容性:IOS Andriod,不同系统版本,不同屏幕

3)获取设备权限

4)网络环境:wifi/弱网/断网,以及这几种情况切换下,发起请求与缺省页面

5)FPS:正常情况下资源加载速度,打开速度

6)流量测试,和电量测试

7)cpu 和内存资源占用情况

8)负载测试、压力测试:程序的健壮性,并发量用户量比较大的时候是否会有崩溃之类的问题

9)安全测试:涉及安全性的数据不可以被挟持,攻击,密码不可明文存储

10)是否调用第三方,与第三方软件的协调配合

8、一门计算机编程语言

根据公司招聘要求,大部分公司会让手写算法题,但一般来说不会特别难,视工作经验而定。语言这方面可能理论性的东西可以短期记忆,但是真的能流畅的书写还是要系统性的学习,不管是书或者视频,基础还是要打好,然后刷一些算法题,而且对一个测试来说,精通一两门语言对于工作是很有益处的,如果不想一直点点点的话,还是多在前期打好语言基础会一门脚本语言的话锦上添花。

9、之前工作的工作内容

这里大致分成三个模块:

1)你们公司的测试流程是什么

基本算是必问问题,可能各个公司会有一些流程简化,但是建议还是实际情况结合正统流程,丰富成更完整的测试流程

2)项目细节

会仔细询问简历上的项目,最好对项目了解到代码架构层面,经得起询问,同理,不要在简历上写自己不太熟悉的东西,如果写了就要做好准备会被问

3)你遇到的印象最深的bug,怎么解决的

可提前准备,这个问题不是说完了bug就完事了,绝大多说面试官会问你问题根源是什么,开发为什么会出这个问题,建议说到代码层面的问题

10、软实力

由于测试工作的实际内容,各部门沟通比较常见,也经常会遇到冲突处理的情况,所以面试的时候很多面试官会考察面试者的沟通协调能力,事务处理能力,这个问题出现的频率很高,场景可能各不相同。比如,即将上线,产品临时加需求的情况;开发没有按期完成需求影响上线的情况,这些场景下问你需要怎么处理

这些问题其实没有准确的答案,其实如果有测试经验的同学可以直接结合自己经验,说出自己觉得合适的处理方案,可以提前自己做一个总结。

11、你需要向公司了解什么

一般面试官最后会给一些时间问你想要了解什么,如果你觉得已经到了可能会发offer的时候,就不要问一些虚的东西了。

  • 公司测试团队有多少人

  • 测试的主要工作内容是什么(很重要)

  • 公司的发展方向

  • 上下班时间和加班情况

  • 月薪和年终奖以及其他福利(hr谈薪期间)

  • 掌握清楚这些,对后续可能的offer对比很有帮助

12、一些有用的参考APP

  • 互联网求职:拉钩,boss直聘(ps,有内推途径优先走内推)

  • 公司信息查询:看准网,天眼查,脉脉-职言区,牛客网(针对应届)

  • 刷题:leetcode

  • 信息检索:github

(对于大厂面试建议提前查下各网站得面试题和反馈,针对性面试)


以上是个人的一些总结,可能也有些不太全面,对于个人不太涉猎的比如UI自动化方面谈及不太多,所以权当基础性的参考。

找工作的过程必然是一个疲惫的过程,可能会经历很多否定和压力,以及焦虑,保持良好的心态,相信自己,在每次面试之后总结并且提升,就变得十分重要。反过来想,在找工作的过程中,求职者更能清晰的了解到现在的市场上对测试的要求是什么,对于自己将来的发展也十分有利,凡是经历过的,都不失为对自己的一种提升,希望还在找工作的朋友能够坚持下去。

最后,祝大家能拿到心仪的offer。

15243603_201904111137001Ygu4.png

本文未经授权不得转载,如需转载请于51Testing小编联系。


  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • Charles常用的功能总结过滤网络请求;截取 iPhone 上的网络封包;截取 Https 通讯信息;模拟慢速网络;修改网络请求内容;给服务器做压力测试;修改服务器返回内容;Map 重定向功能;Rewrite 功能;Breakpoints 功能;设置ssl允许访问地址;查看连接本机charle代理的ip;设置请求的黑名单;缓存请求返回的内容。对于某一个具体的网络请求,你可以查看其详细的请求内容和响应内容。如果请求内容是 POST 的表单,Charles 会自动帮你将表单进行分项显示。如果响应内容是 JSON 格式的,那么 Charles 可以自动帮你将 JSON 内容格式化,方便你查看。如果...
            14 15 2941
            分享
          • 天猫、京东今年双11的预售时间,不约而同定在了10月24日晚8点。尽管抖音电商略显低调,没有举行特别的启动会,但暗流涌动,抖音双11好物节预售抢先于10月24日0点正式开始,且各方阵仗一点都不含糊。10月26日,《每日经济新闻》记者独家获悉相关预售数据,截至10月26日,抖音双11好物节预售累计付定金用户数为去年双11全周期的2.6倍;累计动销商品数为去年双11全周期4.7倍;累计动销商家数为去年双11全周期3.8倍。与此同时,消费电子家居生活定金订单总金额超去年双11全周期总金额;手机、大家电对比21年双11全周期预售额翻倍增长,爆发超100个百万单品。据了解,今年双11前,与天猫、京东一样...
            0 0 756
            分享
          •   1 背景  分布式批量系统指的是采用分布式数据库架构,主体功能由批量程序实现的系统。分布式系统批量程序的性能测试,除了和联机交易性能测试一样关注服务器资源使用率是否合理、是否存在性能异常外,在测试执行阶段需要关注是否因数据分布不均衡导致部分并发子程序执行时间过长,成为整体批量程序的“短板”,从而影响批量程序的整体时间。  下面我主要介绍一种分布式系统批量程序性能优化的思路,并结合实际测试效果说明。  2 分布式系统分片和批量并发规则  被测系统数据库为分布式数据库,存储并处理某公司各个机构的业务数据,包括若干个数据库分片、500多个分片键(分布式表的一个主键字段,用来区分数据存放的分片),...
            0 0 884
            分享
          • 上篇提到让应用自动抓取Crash日志提交到服务器,如果发布之前没有经过严格测试(个人练手做的一些小应用),会发现有很多异常都是显而易见的错误,只是没有严格测试忽略了而已,其实android自带了一个自动化测试工具,Monkey,可以用来简单测试一下程序的健壮性如何。monkey测试的原理就是利用socket通讯的方式来模拟用户的按键输入,触摸屏输入,手势输入等,看设备多长时间会出异常。当Monkey程序在模拟器或设备运行的时候,如果用户出发了比如点击,触摸,手势或一些系统级别的事件的时候,它就会产生随机脉冲,所以可以用Monkey用随机重复的方法去负荷测试你开发的软件。要获取Monkey命令自...
            16 16 1666
            分享
          •   APP测试是一个广泛的概念,根据每个APP的应用场景不一样,测试的方向也略微的不同,在测试过程中需要灵活应用自身所知的测试手段。  安装测试  软件在不同操作系统(Android系统和IOS系统)上是否正常安装。  软件在不同版本的操作系统(如Android 5.0、Android 6.0、Android 7.0、Android8.0和iOS 9.0、iOS 10.0、iOS 11.0、iOS 12.0)上是否正常安装。  软件在不同的品牌手机(华为、三星、OPPO、VIVO等其他品牌手机)上是否正常安装。  卸载旧版本再安装。(这个操作可以排插新版本的安装包是否丢失库,如果是覆盖安装的话...
            0 0 1185
            分享
      • 51testing软件测试圈微信