某大厂测试开发面试总结

前些天接到某公司的测开面试电话说要聊一聊,想想聊聊也没啥,就当长见识吧。结果半个多小时下来发现自己还是挺“受伤”的,也算有所收获吧。也印证了毫无准备的打战除非自身足够强大,不然就是会失败的。

某大厂测试开发面试总结

但是还是挺感谢这个电话的,让我知道了自己的不足:

1、我没有利用好自己的优势,如果不是优势之前的经历或许不值得提太多,不然就是给自己挖坑。

2、看到了自己基础的薄弱,对于技术没有刨根问底,也没好好去研究掌握,随着工龄的增长,浅尝则止注定走不远吧。

3、分析问题可能还是不够全面,只考虑了怎么解决某个问题,而没有想到怎么多种情况,或者说当时回答的时候没有注意这个回答方向。

无论怎么说,吃一堑,长一智,没有做好就总结争取下次做的更好一点吧。

下面说说面试的内容,随便查一下网上的解答,回答的不好就学学咯。

1、RecyclerView和ListView的区别

1)缓存机制不同

层级不同:

RecyclerView比ListView多两级缓存,支持多个离ItemView缓存,支持开发者自定义缓存处理逻辑,支持所有RecyclerView共用同一个RecyclerViewPool(缓存池)。

2)布局效果、常用效果与API等不同

详细解答参考:https://www.jianshu.com/p/cd8244d1c19a

2、技术选型的依据

这个就是带过的说到,并没有具体谈,但是我感觉挺有必要的,面对现在各种自动化技术的发展是用appium,还是Airtest,遍历工具用哪个等等。为什么要用,效率的提升怎么看出来的。感觉是一个可以思考的地方。

3、原生monkey的原理

网上搜到这两个感觉有点知识点,平时没有太注意原理,光知道用也没想着怎么改改源码啥的:

https://blog.csdn.net/qq_18456543/article/details/76340389

https://www.cnblogs.com/season-xie/p/6376467.html

4、monkey和monkeyRunner区别

主要是一个是adb shell 命令触发随机事件进行点击,monkeyrunner是通过API触发执行,可以制定执行步骤,控制输入等等。

参考这个:https://www.cnblogs.com/huainanhai/p/11790025.html

5、appium和uiautomator的关系或者Airtest和uiautomator的区别

我回答了前面这个,我说的是uiautomator是底层自动化实现,appium最终也是通过这个实现自动化的,但是没说具体,还是参考网上答案吧。

这个答案比较简洁一点:https://www.jianshu.com/p/0920ca6b4c64

这个详细一点:https://www.cnblogs.com/aliceyang/p/11959387.html

6、Android进程间通信方式

哈哈,这个丢人了,忘记了。我想说AIDL,没想起来名字,然后说错了一个还胸有成竹的样子,真的是很久没有接触android的知识了,如果要面试也得刷刷android的面试题。

答案参考:https://blog.csdn.net/nnmmbb/article/details/89702950

7、内存溢出与内存泄露的区别及内存泄漏的原因

这个大概说了区别,原因和我说的不太一样呢,真是白学了,补课起来。

内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。

内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。memory leak会最终会导致out of memory!

详细答案参考:https://www.cnblogs.com/william-dai/p/10901653.html

8、性能数据收集的方式,举例帧率计算的原理

我说了dumpsys和top方式,但是面试官说这些本身也会有内存损耗,我问了还有啥方式,哈哈,有点搞笑吧,后面我也想到solo pi里面通过android 的API调用获取,但是没具体了解也没回答好。

帧率计算的原理答案参考:https://www.jianshu.com/p/940b3129a6db

很多android的优化文章参考:https://www.jianshu.com/p/38bf169ffdc6

9、一个长方形切分若干个等面积的正方形的,长方形切割完,正方形个数越少越好,要怎么切?

主要考思路,不同情况下是怎么处理的,如果是整数求最大公约数,如果是小数的话得另做处理。主要思路是递归。面试官说网上很多答案,我好像没搜到,哈哈。

10、为什么转做测试开发?

这个问题我也在想怎么回答比较好呢,我是说为了职业发展走得更长远,感觉可以再说一下自己喜欢的是什么,符合“喜欢+前景+钱途”应该就是我们选择的原因了。其实,我也不确定这样回答的好不好。

还有一些问题可能没记住,主要是针对我安卓开发经验及现在做的工作问了一些问题,其实很多东西我现在都没用了,如果真的是想换工作的话简历还是得好好更新一下。针对你自己做的,比较有价值的说说,而且要对你写的东西了解,不然人家一深入提问就懵了,面试可能就失败了,比如此刻的我。。。。总结结束!希望接下来自己学习不要总是浅尝则止,多多刨根问底吧。然后算法还是得系统的学习一下,理论不懂也说不出个关键来。最后偶尔学学英语的你还是要自信的speak english! 继续加油吧!

源自公众号  学习向前看



留言