一面
1.自我介绍
2.编程题目:
3.给出一个数组,如 [7864, 284, 347, 7732, 8498],现在需要将数组中的数字拼接起来,如按顺序依次拼接为:786428434777328498,数组中的数字拼接顺序可以任意,编写程序,返回「最大的可能拼出的数字」。(以上面数组为例,返回:849878647732347284)
4.在 UI 自动化用例中如何切换 Android 原生页面和 H5 页面
5.工作中是如何设计 UI 测试平台的,平台都有哪些功能,用例执行如何调度?
6.微信中发送图片给他人,对这个功能设计用例
7.网络四层协议,DNS 解析过程
二面
8.自我介绍
9.关于移动端 UI 自动化测试:
- 负责哪些业务?
- Hybrid App 和 H5 页面如何测试?
- UI 用例一共有多少条,如何管理 UI 用例?
- 除了 UI 以外,做了哪些性能测试没有?
- 如何判断 Android 手机上是否安装了某个应用包?
- Appium 每层的结构,原理,如果 UI 自动化用例执行失败应该怎样排查?
10.编程题目: - 有一个文件,文件中每一行为一个 HTTP 请求响应的 log,每行的 log 格式为:
- [HTTP URL] [请求响应码,如 200,404] [请求响应时间,以 ms 为单位]
- 例如
http://www.baidu.com 200 345
。 - 求一下所有响应码为 200 的请求的响应时间平均值,单位 ms
- 针对以上程序,设计测试用例
11.JVM 中,内存结构分布。程序计数器区会不会报 OOM 异常?
12.工作中遇到过最棘手的问题是什么(印象最深的问题是什么),如何解决的?
13.尝试用过哪些开源的工具?(因为提到了 macaca 里的 app-inspector,就让讲一下 app-inspector 的功能和结构,以及实现方式,能讲多细就讲多细)
14.现在有两个杯子,一个能装水 6L,一个能装水 5L,不用其他杯子的情况下,怎么倒出 3L 的水?(WTF? )
三面
15.自我介绍
16.Appium 每层的结构,appium 底层是基于什么?
17.经典题目:
- 打开浏览器,从输入 www.baidu.com 到看到浏览器显示页面,这个过程中,都有哪些步骤和环节?
- DNS 解析之前,还完成了哪些步骤?
18.假如有一天,报告某地区的用户都打不开 app 中的一篇资讯(一个视频),可能的原因有哪些?
19.针对微信朋友圈发送图片功能,设计用例,不考虑视频
20.用过哪些测试工具?比如抓包工具 Charles & fiddler,如果要实现一个 fiddler 抓包工具,如何设计?
21.假如让你来保证整个 APP 的质量,如何实施,首要保证什么功能,如何保证?
22.APP 和竞品 APP 之间的关系,APP 和竞品 APP 产品设计上有什么不同点,为什么要这么设计?