辞了外包,上岸字节测试岗我落泪了,400多个日夜没人知道我付出了多少....

news2024/11/22 11:52:04

前言:

没有绝对的天才,只有持续不断的付出。对于我们每一个平凡人来说,改变命运只能依靠努力+幸运,但如果你不够幸运,那就只能拉高努力的占比。

2023年3月,我有幸成为了字节跳动的一名自动化测试工程师,正如标题所说,我从外包辞职了,10000小时后,走进字节跳动拿下了offer。

相信同行都清楚,从外包进大厂有多难,运气之余,也离不开我自己的脚踏实地,所幸每踏出的一步都留下了厚厚的脚印。

æä»å¤åè¾èäºï¼10000å°æ¶åï¼èµ°è¿å­èè·³å¨æ¿äºoffer

字节跳动测试工程师4面试经历还原

一面

  1. 自我介绍
  2. 谈谈您的自动化测试经验
  3. 请问您在测试用例设计方面有什么经验吗?
  4. 如果需要编写UI自动化测试,你会选择哪些工具和框架为基础?
  5. 进行UI自动化测试时,你会如何解决页面元素变更导致的脚本失效问题?
  6. 你所熟悉的自动化测试中,测试覆盖率是如何保障的?
  7. 能否谈谈关于Mock的一些经验和思考?
  8. 对于不易自动化的场景,你有什么处理方式?
  9. 您是否使用过分布式系统做自动化测试?请简要谈谈您的想法。
  10. 在自动化测试方面,你觉得最重要的是什么?

二面

  1. 自我介绍
  2. 能否详细讲述一下性能测试的流程?
  3. 在进行性能测试时,你如何选择性能测试工具?
  4. 在压力测试中,如何定义合理的负载均衡策略?
  5. 在进行并发测试时,你会如何处理可能存在的线程安全问题?
  6. 在进行API测试时,你会选择哪些工具和框架?
  7. 对于一个测试环境的建立,你通常需要哪

三面 

1.请问你是如何对一个新的项目进行自动化测试规划的?

2.你可以谈谈你最擅长的自动化测试工具和框架是什么,以及为什么选择这些工具和框架?

3.当你遇到一个难以自动化测试的场景时,你会采取哪些措施来解决这个问题?

4.你如何确保你编写的自动化测试用例对应的业务逻辑正确无误?

5.你认为在持续集成/持续交付环境下应该如何管理和运行自动化测试用例?

6.请描述一下你做过的性能测试项目,包括使用的工具和方法以及测试结果。

7.你是否有经验使用Selenium或Appium自动化测试移动端应用?如果有,你是如何进行测试的?

8.在测试过程中你是否会编写脚本或工具来辅助你完成任务?如果有,请提供一个例子。

9.你是否熟悉安全测试?可以谈谈你所知道的安全测试的方法和技术吗?

10.最后,请说说你对软件测试未来的发展趋势有哪些看法?

字节跳动面试总结(一些心得和小建议)

字节跳动对算法真的非常重要,提前刷题真的很有必要,不然基本上没戏,运气好的说不定还能被问到原题,当然你是算法大神,就不需要浪费时间在这上面了。

基本上每轮都有算法题,1~3道左右,难度不一,一般根据当次面试情况来的,会考虑的面试者的表现,但也不会太为难你。

拿到算法题时,不要立即作答,可以先和面试官聊一下自己的思路。
 

æä»å¤åè¾èäºï¼10000å°æ¶åï¼èµ°è¿å­èè·³å¨æ¿äºoffer

外包教了我什么?(积累了什么?)

很多人认为在外包学不到什么东西,但我却不这么认为,无论你身处什么环境,造成什么样结果的人都是你自己。所以,在外包工作的这些年,我并不是单一的机械化敲代码,在这个过程中,我会主动地去复盘,去总结,去学习,而慢慢积累的工作方式才铸就了我今天的“质变”。

在外包中,我积累到了什么?

代码效率;
各种项目和业务的理解;
熟练使用增删改查。
在外包中,我复盘了什么?做了哪些总结?(写了一些博客,做了一些笔记总结,附下PDF)完整版文末免费获取~

虽然说是面经手册,但是里面的涵盖的知识点还是很全面、很细的,一共分了一下十几个大部分:

全网首发-涵盖16个技术栈

  • 第一部分,测试理论(测试基础+需求分析+测试模型+测试计划+测试策略+测试案例等等)
  • 第二部分,Linux( Linux基础+Linux练习题)
  • 第三部分,MySQL(基础知识+查询练习+万年学生表经典面试题汇总+数据库企业真题)
  • 第四部分,Web测试
  • 第五部分,API测试
  • 第六部分,App测试
  • 第七部分,管理工具
  • 第八部分,Python基础(Python基础+编程题+集合+函数+Python特性等等)
  • 第九部分,Selenium相关
  • 第十部分,性能测试
  • 第十一部分,LordRunner相关
  • 第十二部分,计算机网络
  • 第十三部分,组成原理
  • 第十四部分,数据结构与算法
  • 第十五部分,逻辑题
  • 第十六部分,人力资源

软件测试基础

  • 软件测试的步骤是什么?
  • 如何录制测试脚本?
  • 应该考虑进行如何测试的测试方法
  • 怎样估计测试工作量?
  • 测试设计的问题
  • 当测试过程发生错误时,有哪几种解决办法?
  • 测试执行的问题
  • 测试评估的目标
  • 如何提高测试?
  • C/S模式的优点和缺点
  • B/S模式的优点和缺点

Linux

  • grep和find的区别? grep 都有哪些用法?
  • 查看IP地址?
  • 创建和删除一个多级目录?
  • 在当前用户家目录中查找haha.txt文件?
  • 如何查询出tomcat的进程并杀掉这个进程,写出linux命令?
  • 动态查看日志文件?
  • 查看系統硬盘空间的命令?
  • 查看当前机器listen 的所有端口?

Python

  • 统计python源代码文件中代码行数,去除注释,空行,进行输出?
  • python调用cmd并返回结果?
  • 冒泡排序
  • 1,2,3,4 这4个数字,能组成多少个互不相同的且无重复的三位数,都是多少?
  • 请用 python 打印出 10000 以内的对称数(对称数特点:数字左右对称,如:1,2,11,121,1221 等)
  • 给定一个整数 N,和一个 0-9 的数 K,要求返回 0-N 中数字 K 出现的次数
  • 判断 101-200 之间有多少个素数,并输出所有的素数
  • 一个输入三角形的函数,输入后输出是否能组成三角形,三角形类型,请用等价类- 划分法设计测试用例

MySQL

  • 你用的Mysql是哪个引擎,各引擎之间有什么区别?
  • 如何对查询命令进行优化?
  • 数据库的优化?
  • Sql注入是如何产“生的,如何防止?
  • NoSQL和关系数据库的区别?
  • MySQL与MongoDB本质之间最基本的差别是什么
  • Mysql数据库中怎么实现分页?
  • Mysql数据库的操作?
  • 优化数据库?提高数据库的性能?
  • 什么是数据的完整性?

Web

  • Web测试和app测试区别?
  • WEB测试环境搭建和测试方法
  • WEB测试教程
  • WEB测试要点及基本方法
  • Web测试页面总结

接口测试

  • 什么是接口
  • 如果模块请求http改为了https,测试方案应该如何制定,修改?
  • 常用HTTP 协议调试代理I具有什么?详细说明抓取HTTPS协议的设置过程?
  • 描述TCP/IP协议的层次结构,以及每一-层中重要协议
  • jmeter,一个接口的响应结果如下:
  • 接口产生的垃圾数据如何清理
  • 依赖第三方的接口如何处理
  • 测试的数据你放在哪?
  • 什么是数据驱动,如何参数化?

性能测试

  • 你认为性能测试的目的是什么?做好性能测试的工作的关键是什么?
  • 服务端性能分析都从哪些角度来进行?
  • 如何理解压力测试,负裁测试以及性能测试?
  • 如何判断是否有内存泄漏及关注的指标?
  • 描述软件产“生内存泄露的原因以及检查方式。(可以结合- 种开发语言进行描述)
  • 简述什么是值传递,什么是地址传递,两者区别是什么?
  • 什么是系统瓶颈?

selenium

  • 如何开展自动化测试框架的构建?
  • 如何设计自动化测试用例:
  • webdriver如何开启和退出一个浏览器?
  • 什么是自动化测试框架?
  • Selenium是什么,流行的版本有哪些?
  • 你如何从命令行启动Selenium RC?
  • 在我的机器端口4444不是免费的。我怎样才能使用另一个端口?
  • 什么是Selenium Server,它与Selenium Hub有什么不同?
  • 你如何从Selenium连接到数据库?
  • 你如何验证多个页面上存在的一个对象?
  • XPath中使用单斜杠和双斜杠有什么区别?
  • 如何编写SeleniumIDE/ RC的用户扩展?
  • 如何在页面加载成功后验证元素的存在?
  • 你对Selenium Grid有什么了解?它提供了什么功能?
  • 如何从你的Java Class启动Selenium服务器?
  • Selenium中有哪些验证点?
  • 什么是XPath?什么时候应该在Selenium中使用XPath?

计算机与网络

  • 一台计算机的IP是192.168.10.71子网掩码255.255.255.64与192.168.10.201 …
  • 请简述DNS、活动目录、域的概念。
  • 10M兆宽带是什么意思?理论下载速度是多少?
  • 什么是IP地址?
  • OSI七层网络模型的划分?
  • TCP和UDP有什么不同?
  • HTTP属于哪一层的协议?
  • HTTP和HTTPS的区别?
  • cookies和session的区别?
  • HTTP的get请求和post请求的区别?
  • HTTP1.0和HTTP1.1有什么区别
  • TCP的连接建立过程,以及断开过程?
  • 客户端使用DHCP获取IP的过程?
  • 写出某个网段的网络地址和广播地址?

人力资源

  • 你的测试职业发展是什么?你自认为做测试的优势在哪里?
  • 你找工作时,最重要的考虑因素为何?
  • 为什么我们应该录取你?
  • 请谈谈你个人的最大特色。
  • 一个测试工程师应具备那些素质和技能?
  • 还有问一下你是怎样保证软件质量的,也就是说你觉得怎样才能最大限度地保证软件质量?
  • 为什么选择测试这行?
  • 如果我雇用你,你能给部门带来什么贡献?

最后

这份文档,对于想从事【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/624097.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Qt导出pdf格式表格

预期目标如下: 头文件: #include #include #include #include #include #include #include private: QString m_html; 调用: QDateTime dateTime QDateTime::currentDateTime(); //当前日期和时间 QString ExportTime dateTime.t…

python带你获取小破站喜爱UP得所用内容

前言 嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 环境使用: Python 3.8 Pycharm 2022.3版本 ffmpeg <需要设置环境变量> 软件的使用 合成视频和音频 模块使用: 第三方模块&#xff0c;需要安装 import requests >>> pip install requests 内置模…

认识数据湖加速器(Data Lake Accelerator Goose FileSystem,GooseFS)

认识数据湖加速器Data Lake Accelerator Goose FileSystem&#xff0c;GooseFS 一、产品概述二、产品功能三、产品优势四、快速入门五、使用 GooseFS 预热 Table 中的数据六、使用 GooseFS 进行文件上传和下载操作七、使用 GooseFS 加速文件上传和下载操作八、关闭 GooseFS九、…

UE5 Chaos破碎系统学习2

本文继续从实用性的角度学习Chaos破碎系统&#xff0c;因为破碎的许多操作需要力场&#xff0c;比较麻烦&#xff0c;因此本文打算绕过力场实现一些效果&#xff1a; 1.显示材质效果 制作Chaos破碎效果时&#xff0c;会在编辑器下看不见材质&#xff0c;我们可以选择Geometr…

美创数据安全服务能力再获认可!

美创数据安全服务能力又一次获认可&#xff01; 近日&#xff0c;经全方位能力评估和专家评审&#xff0c;美创获得中国软件评测中心和中国计算机行业协会数据安全专业委员会联合颁发的《数据安全服务能力评定资格证书》&#xff0c;数据安全评估能力符合二级评定资格要求。 为…

生存压力下,Smartbi这套方案为企业降本增效带来新的希望

在如今的经济环境下&#xff0c;许多IT企业都面临着困境。经济的不景气导致市场竞争更加激烈&#xff0c;企业的盈利能力受到了严重的冲击&#xff1b;高昂的成本让企业喘不上气来。为了在这个艰难的时期生存下来&#xff0c;降本增效成为了企业的当务之急。 l实施项目利润低&a…

【C++】是内存管理,但C++ !! 模板初阶

目录 一&#xff0c;回望C语言内存 二&#xff0c; C 内存管理方式 1. 内置类型 2. 自定义类型 3. new & malloc 返回内容区别 4. operator new & operator delete 5. malloc/free和new/delete的区别总结 6. 定位new表达式(placement-new) &#xff08;了…

018+limou+C语言预处理

0.前言 您好&#xff0c;这里是limou3434的一篇博客&#xff0c;感兴趣您可以看看我的其他博文系列。本次我主要给您带来了C语言有关预处理的知识。 1.宏的深度理解与使用 1.1.数值宏常量 #define PI 3.1415926注意define和#之间是可以留有空格的 1.2.字符宏常量 #includ…

是德DSO9254A示波器/KEYSIGHT DSO9254A:2.5 GHz

KEYSIGHT是德DSO9254A示波器&#xff0c;Infiniium 9000 系列 2.5 GHz 示波器提供 4 个模拟通道、10 Mpts 存储器和 20 GSa/s 采样率。 简介 Keysight(原Agilent) Infiniium DSO9254A 配有 15 英寸 XGA 显示屏&#xff0c;而且包装非常轻巧&#xff0c;仅有 9 英寸深、26 磅重…

C++ 编写二维码(有源码)

首先来展示一下成果&#xff1a; 二维码图片好像违规了&#xff0c;直接给链接吧网址链接 如果你扫了这个二维码就会得到一个网址&#xff0c;该网址是我写代码的参考&#xff0c;该网站讲述了如何编写一个二维码&#xff0c;很详细&#xff0c;我没有实现汉字的编码&#xff…

LeetCode ! 42 Trapping Rain Water

参考资料&#xff1a;leetCode评论区大佬, 《程序员代码面试指南》 思路1&#xff1a;使用单调栈 维持一个从栈底到栈顶中的元素——下标&#xff0c;对应到数组是从大到小排序。 遍历数组&#xff0c;如果新值大于栈顶元素&#xff08;下标&#xff09;对应的数组值&#xf…

『Linux』第九讲:Linux多线程详解(六 - 完结)_ 线程池 | 读写锁

「前言」文章是关于Linux多线程方面的知识&#xff0c;上一篇是 Linux多线程详解&#xff08;五&#xff09;&#xff0c;今天这篇是 Linux多线程详解&#xff08;六&#xff09;&#xff0c;也是多线程最后一篇&#xff0c;内容大致是线程池&#xff0c;讲解下面开始&#xff…

什么?英语不好?这所211可以不考英语!

本期为大家整理热门院校“哈尔滨工程大学810”的择校分析&#xff0c;这个择校分析专题会为大家结合&#xff1a;初试复试占比、复试录取规则&#xff08;是否公平&#xff09;、往年录取录取名单、招生人数、分数线、专业课难度等进行分析。希望能够帮到大家! –所有数据来源…

KDJJC-80绝缘油介电强度测试仪

一、概述 测试仪&#xff08;单杯&#xff09;是我公司科研技术人员&#xff0c;依据国家标准GB507-1986及行标DL/T846.7-2004的有关规定&#xff0c;发挥自身优势&#xff0c;经过多次现场试验和长期不懈努力&#xff0c;精心研制开发的高准确度、数字化工业仪器。 为满足不同…

初步了解SpringCloud微服务架构

✅作者简介&#xff1a;大家好&#xff0c;我是Cisyam&#xff0c;热爱Java后端开发者&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;Cisyam-Shark的博客 &#x1f49e;当前专栏&#xff1a; 微服务探索之旅 ✨特色专…

Apikit SaaS 10.9.0 版本更新:接口测试支持通过 URL 请求大型文件,覆盖更多场景的文件请求测试

Hi&#xff0c;大家好&#xff01; Eolink Apikit 即将在 2023年 6月 8日晚 18:00 开始更新 10.9.0 版本。本次版本更新主要是对多个应用级资源合并&#xff0c;并基于此简化付费套餐和降低费率。 本次应用合并是为了接下来更好的发挥 Eolink Apikit 的优势&#xff0c;提供 …

Web前端-React学习

React基础 React 概述 React 是一个用于构建用户界面的JavaScript库。 用户界面&#xff1a; HTML页面&#xff08;前端&#xff09; React主要用来写HTML页面&#xff0c; 或构建Web应用 如果从MVC的角度来看&#xff0c;React仅仅是视图层&#xff08;V&#xff09;,也就…

多目标建模loss为什么最好同时收敛?

多目标的多个loss是否同时收敛最好&#xff1f; 假设 task A的独有参数 W a W_a Wa​task B的独有参数 W b W_b Wb​task A和 task B的共享的参数 W s W_s Ws​ 那么 l o s s l o s s a l o s s b loss loss_a loss_b losslossa​lossb​ 假设损失函数为 f f f&…

【DepthFilter】深度滤波器

14讲P326-327 函数实现一个深度滤波器&#xff0c;用于计算图像中某个像素点的深度值。算法步骤的含义和含义&#xff1a; 将当前帧的像素点和参考帧的像素点通过三角化计算深度。将参考帧到当前帧的变换矩阵 T_C_R 转换为当前帧到参考帧的变换矩阵 T_R_C。将参考帧像素点 pt_…

Docker超详细基础使用(带图)

目录 安装ubuntu 基本使用命令 docker run 容器名 延伸命令 启动ubuntu 查看所有正在运行的容器 指定容器别名启动 doker ps 延伸命令 退出容器 重新进入正在运行的容器 启动容器 删除已停止的容器 强制删除容器 查看容器日志 查看容器内部运行的进程 ​编辑 查看容…