今日头条测试开发面试回顾
字节跳动公司以发展迅猛,待遇优厚和面试难闻名于业界。前段时间面试字节跳动(今日头条),并成功拿下高级测试开发工程师岗位后的面试题目回顾,供跳槽季的各位同学参考!
一面
自我介绍
编程题目:
给出一个数组,如 [7864, 284, 347, 7732, 8498],现在需要将数组中的数字拼接起来,如按顺序依次拼接为:786428434777328498,数组中的数字拼接顺序可以任意,编写程序,返回「最大的可能拼出的数字」。(以上面数组为例,返回:849878647732347284)
在 UI 自动化用例中如何切换 Android 原生页面和 H5 页面
工作中是如何设计 UI 测试平台的,平台都有哪些功能,用例执行如何调度?
微信中发送图片给他人,对这个功能设计用例
网络四层协议,DNS 解析过程
二面
自我介绍
关于移动端 UI 自动化测试:
负责哪些业务?
Hybrid App 和 H5 页面如何测试?
UI 用例一共有多少条,如何管理 UI 用例?
除了 UI 以外,做了哪些性能测试没有?
如何判断 Android 手机上是否安装了某个应用包?
Appium 每层的结构,原理,如果 UI 自动化用例执行失败应该怎样排查?
编程题目:
有一个文件,文件中每一行为一个 HTTP 请求响应的 log,每行的 log 格式为:
[HTTP URL] [请求响应码,如 200,404] [请求响应时间,以 ms 为单位]
例如 `www.baidu.com 200 345`。
求一下所有响应码为 200 的请求的响应时间平均值,单位 ms
针对以上程序,设计测试用例
JVM 中,内存结构分布。程序计数器区会不会报 OOM 异常?
工作中遇到过最棘手的问题是什么(印象最深的问题是什么),如何解决的?
尝试用过哪些开源的工具?(因为提到了 macaca 里的 app-inspector,就让讲一下 app-inspector 的功能和结构,以及实现方式,能讲多细就讲多细)
现在有两个杯子,一个能装水 6L,一个能装水 5L,不用其他杯子的情况下,怎么倒出 3L 的水?(WTF?😓)
三面
自我介绍
Appium 每层的结构,appium 底层是基于什么?
经典题目:
打开浏览器,从输入 www.baidu.com 到看到浏览器显示页面,这个过程中,都有哪些步骤和环节?
DNS 解析之前,还完成了哪些步骤?
假如有一天,报告某地区的用户都打不开 app 中的一篇资讯(一个视频),可能的原因有哪些?
针对微信朋友圈发送图片功能,设计用例,不考虑视频
用过哪些测试工具?比如抓包工具 Charles & fiddler,如果要实现一个 fiddler 抓包工具,如何设计?
假如让你来保证整个 APP 的质量,如何实施,首要保证什么功能,如何保证?
APP 和竞品 APP 之间的关系,APP 和竞品 APP 产品设计上有什么不同点,为什么要这么设计?
面试秘籍分享
最后,为了帮助大家成功度过面试,我这里整理了一份《软件测试面试题库》,包括测试理论、Linux基础、MySQL基础、Web测试、接口测试、App测试、Python基础、Selenium相关、性能测试相关等,希望可以帮助到各位!
一、基础知识
计算机基础
测试理论
HTML基础
CSS基础
JS基础
二、Linux和数据库
linux
数据库介绍
SQL语言(重点)
数据库高级功能
三、编程+数据结构
Python基础
面向对象
异常处理
模块和包
四、WEB自动化
WEB自动化入门
WEB自动化基础
WEB自动化中级
WEB自动化高级
项目实战
五、移动自动化
移动自动化基础
移动自动化中级
移动自动化高级
六、接口测试
接口基础
postman实现接口测试
数据库操作
代码实现接口测试
持续集成
接口测试扩展
七、接口自动化
接口自动化脚本编写
接口自动化测试执行
接口自动化测试报告分析
...
八、性能测试
性能测试基础
性能测试工具
项目-接口性能测试
项目-web性能测试
性能测试调优
九、安全测试
数据库安全测试
网络安全测试
应用程序安全测试
安全性能测试
社会工程学测试
资料文档领取方式
上面资料只是展现了一小部分,一共有600多个G的资料,全部展现出来也不太现实,为了不影响大家的阅读体验就只展示了部分内容,还望大家海涵,我在这里也为各位整理好了,同时,也节省大家在网上搜索资料的时间来学习! 需要的小伙伴们点击下方小卡片自行领取即可。