前言
前段时间去面试了一个公司,成功拿到了offer,薪资也从14k涨到了20k,对于工作都还没几年的我来说,还是比较满意的,毕竟一些工作5、6年的可能还没我高。
我可能就是大家口中的卷王,感觉自己年轻,所以从早干到晚,甚至我都想搬张床到工位睡觉了(就是这么卷)。其实也没办法,自己家里条件不是很好,只能靠自己努力点咯!也是希望自己父母不要这么累吧!在大三的时候我就知道自己能干啥,所以从那时候就开始自学软件测试了,大四的时候获得了一个小公司的实习机会。我自己其实并不算个聪明的人,所以只有在工作中去不断的学习、实践,比别人多花一倍甚至几倍的时间,我才能打下扎实的基础,现在工作也是得心应手。
我觉得人还是得逼自己一把,不然你不知道你有多大的潜力!下面我分享一下在面试中问的问题,以及我自己在用的一份《面试笔记》笔记在文末免费领取,这份笔记是我找一位现在在字节工作的学长那里拿的,希望对各位有帮助。
面试经历
一面
1.插件化。启动activity的hook方式。taskAffity。
2.okhttp支持HTTP2?http2的功能有哪些?tcp方面拥塞控制?tsl的握手和具体的非对称加密算法。非对称名称
3.handler的post(Runnable)如何实现的。callback,runnable,msg的执行优先级。
4.阻塞是怎么实现的?为什么不会阻塞主线程?
5.求二叉树中两个节点之间的最大距离。
6.206含义,未修改资源是哪个,302含义,301含义
7.多进程通信问题。binder优势。aidl生成的java类细节。多进程遇到哪些问题?
8.动态代理传入的参数都有哪些?非接口的类能实现动态代理吗?ASM的原理
9.Application和Activity在Context的继承树上有何区别?二者使用上有何不同?
10.任意一颗二叉树,求最大节点距离
二面
1.设计一个日志系统。
2.内存泄露的分类。怎么查看内存泄露的问题
3.touch事件源码问题。
4.组件化的问题。module和app之间的区别。moduler通信是如何实现的。
5.native奔溃的日志采集,怎么处理?
6.注解实现一个提示功能:如果int的值大于了3需要提示。
三面
1.介绍下flutter的启动流程
2.介绍下flutter与weex的区别
3.组件化介绍一下
4.webview中与js通信的手段有哪些?
5.介绍下flutter_boost的原理
四面
1.适配器和装饰模式各自特点和使用场景
2.视频编解码是怎么做的
3.三色球排序
HR面
1.询问了除字节跳动以外,还在看其他工作机会么?分别是什么
2.字节、XXX公司、XXX公司,你的优先级是什么,为什么?
3.之前薪资待遇是多少?你期望的薪资是多少?
4.平时有什么爱好?
5.了解职位需求吗?
6.有没有想问的?
面试笔记
我也为大家整理了一套最新的软件测试系统学习教程,包括测试理论、Linux基础、MySQL基础、Web测试、接口测试、App测试、Python基础、Selenium相关、性能测试、LordRunner相关等
第一篇 软件测试基础
第二篇 Python基础 第三篇 MySQL基础
第四篇 LordRunner相关
第五篇 Web测试
第六篇 接口自动化测试
第七篇 App测试
第八篇 性能测试
软件测试学习核心笔记全部目录
整份文档一共有将近 200 页,全部为大家展示出来肯定是不太现实的,为了不影响大家的阅读体验就只展示了部分内容,还望大家海涵,希望能帮助到您面试前的复习且找到一个好的工作,也节省大家在网上搜索资料的时间来学习!