就在前几天,一个学妹入职了字节跳动,测开岗,还特意给我发来了信息表示感谢,因为我之前给了他蛮多帮助。
大家都知道,字节跳动的面试还是挺难的,毕竟字节在国内的互联网已经属于头部,所以我还是非常替我的这位学弟感到骄傲。私下里,我们也聊了很多,所以借这个机会,分享一些经验和心得,希望能帮助到学弟学妹们!
所有的大厂都很看重候选人的教育背景和工作背景,所以有大厂工作背景或者高学历背景的话,还是有一定优势的。当然了,如果学历上有欠缺,也不要太担心,还是有机会的,不是我替字节说好话,而是它家的心态相对还是很开放的。
一定要注重简历的细节,不要觉得没必要,要知道,同一个岗位,向字节、阿里这样大厂投递的简历非常多,如果自己的能亮眼一点,当然翻牌的机会就无形当中增加了。
字节的加班怎么说呢,据有些朋友的反馈,还是挺狠的,毕竟给的钱多。但做测试,首选的还是去大厂吧,毕竟大厂更尊重技术,尤其是薪资上,会有优势,另外,大厂的用户量大,有更好的技术应用场景,上升空间也大,哈哈。
大厂对技术栈要求比较高,恨不得你是全栈,什么都要懂什么都要熟练精通,这个没办法,字节也不例外,所以多刷面试题还是有帮助的。这里给大家推荐一份大厂版的刷题测试笔记吧。
不要觉得进了大厂就高枕无忧了,还是应该把自己在技术上的一些短板尽早的补上,免得被卷到了!
接下来,我给大家梳理一下面试考点,不仅适用于字节跳动,也使用阿里等大厂。
1.测试基础
1.什么是软件测试?
2 软件测试的目的?
3 软件测试的目标
4 软件测试的原则
5 测试的工作流程
6 测试工程师的职责
7 软件都有多少种分类?
8 软件的分类
9 测试的主要方面
10 软件测试的对象
11 什么是“测试案例”?
12 怎么编写案例?
13 软件测试的两种方法
14 测试结束的标准是什么?
15 软件的生命周期
16 什么是软件的生命周期?
17 软件测试按过程分为三个步骤
18 面向对象的设计如何影响测试?
19 软件带来错误的原因很多。主要的原因有哪些?
2.Linux基础
1 说出10个以上的Linux命令
2 在RedHat中,从root用户切到userl用户,一般用什么命令?
3 Linux中,一般怎么隐藏文件?
4 在Linux系统中,一个文件的访问权限是755,其含义是什么?
5 如何查看 CPU 信息?
6 查看占用 CPU 使用率最高的进程?
7 如何查看一个文件的末尾 50 行?
8 如何过滤文件内容中包含”ERROR“的行?
9 查看某端口号?
10 查看某进程号?
11 grep 和find 的区别?grep 都有哪些用法?
12 查看IP 地址?
13 创建和删除一个多级目录?
14 在当前用户家目录中查找 haha.txt 文件?
15 如何查询出 tomcat 的进程并杀掉这个进程,写出 linux 命令?
16 动态查看日志文件?
17 查看系统硬盘空间的命令?
18 查看当前机器 listen 的所有端口?
19 把一个文件夹打包压缩成.tar.gz 的命令,以及解压拆包.tar.gz 的命令?
20 Xshell 工具如果想要实现从服务器上传或者下载文件的话,可以在服务器上安装什么包?
21 以/etc/passwd 的前五行内容为例,提取用户名?
22 在 linux 中 find 和grep 的区别?
23 linux查看文件用什么命令,查看进程用什么命令
24 查看日志常用什么命令,主要查看什么内容
3.MySQL知识
1 什么是数据库?
2 什么是关系型数据库,主键,外键,索引分别是什么?
3 写出表的增删改查SQL语法
4 SQL的表连接方式有哪些?
5 表的连接查询方式有哪些,有什么区别?
6 什么三范式?
7 SQL 的 select 语句完整的执行顺序?
8 说一下 Mysql 数据库存储的原理?
9 事务的特性?
10 简述什么是存储过程和触发器?
11 什么是数据库索引?
12 数据库怎么优化查询效率?
13 你用的 Mysql 是哪个引擎,各引擎之间有什么区别?
14 如何对查询命令进行优化?
15 数据库的优化?
16 Sql 注入是如何产生的,如何防止?
17 NoSQL 和关系数据库的区别?
18 MySQL 与 MongoDB 本质之间最基本的差别是什么
19 Mysql 数据库中怎么实现分页?
20 Mysql 数据库的操作?
21 优化数据库?提高数据库的性能?
22 什么是数据的完整性?
23 存储过程和函数的区别?
24 怎么进行SQL的查询优化?
25 索引的作用,聚集索引与非聚集索引的区别
4.web测试
1 描述用浏览器访问www.baidu.com的过程
2 以京东首页为例,设计用例框架。(注意框架设计逻辑,区域划分,专项测试等,不需要详细用例,需要查看 PC 可直接和辨识管提要求)
3 如何测试购买下单和退货流程
4 什么是sql 注入,什么是跨站脚本,什么是跨站请求伪造?
5 给你一个网站怎么开展测试?
6 电商支付模块的测试如何展开?
7 如何开展兼容性测试?
8 nginx,tomcat,apache 都是什么?
9 apache 和 nginx 的区别?
10 Selenium 有哪些定位元素方法
5.API测试
1 什么是接口
2.如果模块请求 http 改为了https,测试方案应该如何制定,修改?
3.常用 HTTP 协议调试代理工具有什么?详细说明抓取 HTTPS 协议的设置过程?
4.描述 TCP/IP 协议的层次结构,以及每一层中重要协议
5.jmeter,一个接口的响应结果如下:
6 接口产生的垃圾数据如何清理
7 依赖第三方的接口如何处理
8 测试的数据你放在哪?
9 什么是数据驱动,如何参数化?
10 下个接口请求参数依赖上个接口的返回数据
11 依赖于登录的接口如何处理
12 接口测试的步骤有哪些?
13 接口测试中依赖登录状态的接口如何测试?
14 依赖于第三方数据的接口如何进行测试?
15 解释什么是SOAP?
16 解释什么是REST API?
17 API测试发现的Bug类型是什么?
18 我们测试的接口属于哪一类?
19 Cookie 保存在哪里?
20 HTTP有哪些请求方法?
21 接口自动化测试的流程?
22 接口测试用例的编写要点有哪些?
23 提到UI级别测试和API测试之间的关键区别?
24 HTTPS的工作原理
25 HTTPS有哪些优点?
26 HTTPS的缺点
27 HTTPS和HTTP的区别是什么?
6.APP测试
1 什么是Android四大组件?
2 当点击 APP 图标启动程序,说明将要发生那些过程?
3 APP 测试的内容主要包括哪些,如何开展?
4 Android 的兼容性测试都考虑哪些内容?
5 针对 App 的安装功能,写出测试点?
6 常用的 ADB 命令?
7 在查看 logcat 命令日志时候怎么内容保存到本地文件?
8 App 崩溃(闪退),可能是什么原因导致的?
9 如何测试监测 app 的内存使用、CPU 消耗、流量使用情况?
10 弱网测试怎么测
11 “//*[contains(@text,”登录”)]”是什么意思
12 Appium 都有哪些启动方式
7.Python
1 斐波那契数列求 N?
2 字符串反序输出?
3 判断回文?
4 统计python 源代码文件中代码行数,去除注释,空行,进行输出?
5 代码中要修改不可变数据会出现什么问题? 抛出什么异常?
6 print 调用 Python 中底层的什么方法?
7. 简述你对 input()函数的理解?
8. python 两层列表怎么提取第二层的元素
9 Python 函数调用的时候参数的传递方式是值传递还是引用传递?
10 对缺省参数的理解 ?
11 为什么函数名字可以当做参数用?
12 Python 中 pass 语句的作用是什么?
13 结构化程序设计和面向对象程序设计各自的特点及优缺点是什么?
14 Python 中的可变对象和不可变对象?
15 Python 中is 和==的区别?
16 Python 的魔法方法?
17 面向对象中怎么实现只读属性?
18 谈谈你对面向对象的理解?
19 Python 是如何进行类型转换的?
8.Selenium
1 什么是Selenium Webdriver
2 S什么是elenium IDE?
3.常用自动化测试工具机器运行原理,写出一段元素查找的代码?
4 如何开展自动化测试框架的构建?
5.如何设计自动化测试用例:
6 webdriver 如何开启和退出一个浏览器?
7 什么是自动化测试框架?
8 Selenium是什么,流行的版本有哪些?
9 你如何从命令行启动Selenium RC?
10 你如何从Selenium连接到数据库?
11 你如何验证多个页面上存在的一个对象?
12 XPath中使用单斜杠和双斜杠有什么区别?
13 如何编写Selenium IDE / RC的用户扩展?
14 如何在页面加载成功后验证元素的存在?
15 你对Selenium Grid有什么了解?它提供了什么功能?
16 如何从你的Java Class启动Selenium服务器?
17 Selenium中有哪些验证点?
18 什么是XPath?什么时候应该在Selenium中使用XPath?
9.LordRunne
1 1.LoadRunner 的工作原理是什么?
2 LoadRunner分哪三部分?
3 LoadRunner进行测试的流程?
4 什么是并发?在lordrunner中,如何进行并发的测试?集合点失败了会怎么样?
5 LoadRunner 脚本如何录制和编写?
6 LoadRunner 中的Think Time 有什么作用?
7 你如何在负载下执行功能测试?
8 什么是Ramp up?你如何设置?
9 Vuser作为线程运行的优势是什么?
10 如果你想停止执行出错的脚本,怎么做?
11 响应时间和吞吐量间的关系是什么?
12 network中的speed simulation是模拟的什么带宽?
13 生成WEB性能图有什么意义?大概描述即可。
14 WAN emulation是模拟什么的?
15 树视图和脚本视图各有什么优点?
16 LR中的API分为几类?
尾声
鉴于篇幅所限,这份大厂版的刷题测试笔记无法一一展示,也没有附答案,有需要的可以点击下面