百度测开 开发测试工程师 提前批一二三面面经
事业群:MEG
base:北京

一面:2022.8.12

时长:50min

自我介绍

1.个人项目,我的项目是围绕着学校课程的项目来的,面试官就让我介绍这门课讲了些什么

超市外卖系统

2.(学校里)性能测试做了什么工作,性能测试中需要关注什么部分,我从前端和后端分开来讲的

平均响应时间,qps,error

3.接口测试关注的部分

入参,代码逻辑,数据库字段,返回值

正常场景,边界值等价类,和数据库比较

异常场景,传入错误的参数类型和数量,看是否会崩溃

不同数据量下的响应时间

敏感数据加密

用老接口的数据

4.实习中做的测试工作内容有哪些,这些工作是针对APP吗

供应商、物流系统,web和app都测试过

5.TCP三次握手,为什么一定要三次握手?

可靠传输,确保客户端和服务器都能收发数据

6.Linux相关命令:实习中用到的常用的Linux命令有哪些?查看进程的命令?

ls cd pwd grep tail vim ps

ps和ps -aux

7.写sql语句:student表,主键student_id,还有一个表项是成绩grade,查找成绩前十的学生id

select a.student_id
from student a left join grade b

on a.student_id = b.student_id
order by b.grade desc limit 10
8.手撕代码:Leetcode 20.有效的括号

class Solution {
public boolean isValid(String s) {
Map<Character, Character> map = new HashMap<>();
map.put(')', '(');
map.put(']', '[');
map.put('}', '{');
String str = "";
for (int i = 0 ; i < s.length() ; i++) {
char temp = s.charAt(i);
if (temp == '(' || temp == '[' || temp == '{') {
str = str.concat(String.valueOf(temp));
} else {
if (str.length() - 1 < 0 || map.get(temp) != str.charAt(str.length() - 1)) {
return false;
}
str = str.substring(0, str.length() - 1);
}
}
if (str.length() == 0) {
return true;
}
return false;
}
}

9.用例题:以百度首页输入框的功能为例,写测试用例(不需要说搜索之后的)

功能,性能,安全性,兼容性,易用性,界面

https://blog.csdn.net/weixin_49496731/article/details/121772403

 

 

反问:

这个岗位强调开发和测试内容谁更多:都有,每个人会给一些topic开发任务,需要并行去做一些测试的工作;倾向平台还是工具开发:都有,有不同方向,Python和Java都有,CI相关,测试辅助,覆盖率相关的

面试完多久出结果:1-2个工作日

对今天面试的建议:挺好的(?!)

今年秋招比较难,招人会不会更严格:大环境,具体情况不了解,只是一个面试官TAT

部门做的有关内容:商业相关,投放广告

二面:2022.8.16

时长:50min

1.一些聊天:有关实习情况、有无考研打算、base倾向

2.自我介绍

3.介绍实习的经历、团队负责的内容、目前自己所做的工作、目前遇到什么问题、这段工作中做得比较好的亮点及收获

超市外卖,履约,一开始两个人,二期开始一个人,测试整个流程,仓库会卡住,短时间完成任务,多问多学。

4.实习或项目中去定位问题的思路,如何定位并解决的,举一个具体的例子

页面展示错误,先确定是前端还是后端,查看请求发现是后端,查看日志有没有报错,没有报错就看逻辑

如果请求了其他系统,看其他系统有没有错,没有错就看自己的代码逻辑。

5.实习的具体内容:对于Monkey测试中的问题,这个会不会是误报,一定是正确的吗?能不能稳定复现呢?如果日志中出现了问题,能确定这是一个Bug吗?在性能测试中会不会出现一些有关稳定性的,误报的问题?或者说一些其他的问题?

有可能,要看当时的日志。不一定。不一定。重启服务会报错。

6.Java里面哪一部分比较熟?我说集合,面试官就针对这个开始出题

手撕代码1:定义一个Map,找几个方法遍历它,并将元素打印出来

import java.util.*;

public class Main {
public static void main(String[] args) {
Map<String, String> map = new HashMap<>();
map.put("a", "a1");
map.put("b", "b1");
map.put("c", "c1");
// 1.set
Set<String> set = map.keySet();
for (String k: set) {
System.out.print(k + " " + map.get(k));
}
// 2.Set<Map.Entry<>>
Set<Map.Entry<String, String>> entrySet = map.entrySet();
for (Map.Entry<String, String> entry: entrySet) {
System.out.print(entry.getKey() + "," + entry.getValue());
}
}

手撕代码2:合并两个List,去重后排序输出元素

import java.util.*;

public class Main {
public static void main(String[] args) {
();
List<Integer> list2 = new ArrayList<>();
list1.add(3);
list1.add(2);
list1.add(1);
list2.add(1);
list2.add(2);
list2.add(4);
// Collections
Set<Integer> integerSet = new HashSet<>();
integerSet.addAll(list1);
integerSet.addAll(list2);
List<Integer> newList = new ArrayList<Integer>(integerSet);
Collections.sort(newList);
for (Integer i: newList) {
System.out.print(i + " ");
}
}
}

7.Linux这块你哪个命令用得比较多?在文件里查找内容的命令?

grep

8.说回实习,针对我目前测试的手机,流程也好,专项测试也好,有没有可以优化和改进的?

加入更多的自动化,检测部署失败

你认为你现在掌握的开发语言、脚本语言这些掌握得怎么样?你现在电脑上有你写的测试用例吗?(我:!?在公司电脑上

一般,更擅长开发语言

反问:

部门具体工作

面试完多久出结果:技术+经理面一共三轮,后面是HR沟通,如果能过二面,一周内进行联系,现在是提前批,会快一些

如果提前批没过的话,是会自动转入正式批吗:应该不会吧,不太确认,提前批和正式批还有点不一样,可以关注下招聘公众号

对今天面试的建议或评价:(面试官说这种问题大家都爱问,但是回答这个是有要求的hhh)官方一点回答:对于测试来说的话,三个点比较重要:软素质、沟通协调、能力;因为测试涉及到的面比较多,知识面要广,比rd了解的点会更多一些,还需要有一门拿得出手的语言,现在实习的话可以多扩展一些

三面:2022.8.18

时长:40min
(有些记不太得了)

1.自我介绍

2.围绕项目,写了多少条测试用例,怎么写的,代码覆盖率怎么判断和评估,我围绕的是定义展开叙述的,但面试官更想让我说的是有关测试报告的内容

几十条,根据需求和实现,有工具,接口和代码。测试点,影响范围,风险点,如何发现问题,控制方案,测试case,接口,配置,发布步骤

3.黑盒测试和白盒测试,定义和方法,黑盒和白盒所用的测试工具

黑盒不需要知道逻辑,白盒需要知道逻辑。黑盒postman,jmeter,白盒junit

4.了解的自动化测试工具,我说QTP和Selenium,但对Selenium比较熟悉

5.Selenium八大元素定位方式及原理,怎么使用,平时用什么方式,为什么用xpath,元素定位对比

ID,name,classname,xpath。

driver.find_element_by_id('id')
driver.find_element_by_xpath('/html/body/div[4]/div[1]/a')
方便,可以直接复制。

6.考研还是工作?为什么不考研?

工作,自由。

7.base地选择?有跟父母沟通过这方面的内容吗?

北京,支持。

8.看你是团支书,之后大四会涉及到很多的内容吗,忙不忙?

不忙,工作为主。

9.别人对你的评价,优点

接收新事物,严谨。

10.之前遇到过你认为最有挑战的事情,怎么克服困难的

超市外卖,问人+自学

11.未来3-5年的规划,有npy吗,两个人打算什么时候谈婚论嫁?

反问:

面试完什么时候出结果:一周以内,收到测评后再是HR面

面试评价:多去了解一些基于专业课程知识的内容,了解得更深更广一些


百度测开一面二面凉经
发面经攒人品,面完忘记立刻复盘,有些遗忘,但大概就是这些。

20220812一面40min

自我介绍
1.谈论了简历上的项目
2.mysql存储引擎,两类引擎的对比

innodb,myisam,innodb支持事务,myisam速度快
3.http和https区别

s是ssl安全套接层。

对称加密,双方使用相同的密钥

非对称加密,公钥加密,私钥解密
4.OSI体系结构,数据在网络层叫什么,数据链路层叫什么

物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。

比特,帧,包,段(tcp)/数据报(udp)

5.手撕代码:前K大数

反问

20220819二面45min

1.自我介绍
2.是否在项目中遇到技术问题,怎么解决的

查资料,问人,查资料
3.JVM内存结构

栈:函数当前运行过程中的临时变量(引用类型,即地址,指向堆)

本地方法栈:c++的native方法

程序计数器:程序当前运行的位置

以上三个是线程私有

方法区:静态方法或变量,类加载器

堆:对象

4.Java和C++对比

java写起来复杂,预编译,运行速度快

python写起来简单,运行时编译,速度慢
5.hashmap和hashtable区别

hashmap线程不安全,速度快,hashtable线程安全,速度慢
6.垃圾回收机制GC
7.内存溢出和缓存泄露
8.是否使用过Linux,说些指令
9.是否进行过软件测试,测试流程
10.文本写一个sql处理(左连接解决)
11.微信发红包,说说设计测试思路

手撕代码:
1)链表相交问题(自己定义ListNode)
2)算法实现除法计算,取余和取商

反问


百度提前批-测开一面二面三面测评
分享 面经积攒好运 !upup!

一面

自我介绍
深挖项目:问了超级多细节,聊了很久
手写代码:二分查找
设计测试用例:测试电梯
计算机网络TCP,三次握手
访问网址的过程
对DNS的了解
linux相关命令:设置IP地址,查看有几个网卡,查看日志
python有哪些数据结构
深拷贝浅拷贝的区别
装饰器
对测试开发的理解
对云的理解

反问

面试官很友好,主动介绍了岗位部门业务等
最后告诉我一面过了让我好好准备二面,面试体验感很棒

二面

自我介绍
深挖项目
编程题1:最长不重复子字符串长度
编程题2:将字符串转化为整数
Linux命令用过哪些?
Mysql知道哪些?
写一个查询语句:找出年龄最大的员工

反问

面试了50分钟,两个编程题花了比较长时间的
八股问的很少,可能一面八股问的多吧

三面

自我介绍
深挖项目
项目几个人,分工,有矛盾吗,难点在哪里
对测试开发的理解
测试开发的流程
软件开发过程中什么时候需要测试?
每个阶段都需要测试人员做些什么?
项目要上线了,还没测试完怎么办?
开发人员错误较多怎么办
别人对你的负面评价
如何看待重复性的工作
职业规划
哪里人?选择城市?
兴趣爱好
最不能接受室友的一点是什么
如何看待有人评论说大学期间的学习没用?
举例子:理论知识活学活用
对于前几次面试的评价
有没有其他面试或者offer
设计测试用例:微信发送接收消息

反问:应届生培养,技术栈

没有八股,主要问测试相关
还有各种聊天,聊了一个小时

测评

十天之后收到测评
97题性格测试+45题场景题+6道言语理解题
性格测试是选择符合还是不符合
场景题都是工作场景的预设然后选择,类似性格测试
最后6道类似行测题是我没想到的,限时6分钟

一个星期之后状态变为共享中,应该是被横向比较pk掉了


百度测开(2面凉经)
一面7.22:

实习正在做什么

个人项目做的是什么

IOC容器-》IOC容器有什么好处

数据库连接方式

sql-查找倒数第二分数的同学

我写成group by了 应该是order by

写单例

算法1:两数之和

算法2:LRU-结构设技、GET方法

缺点是 自我介绍过于简单、下回需要录音

二面8.2:

项目项目。。。

还问了深度学习模型

两道题 字符串去重、斐波那契数列

为什么投测试?

谈谈垃圾回收的理解-》开放式回答(开背)

对测试怎么看?

百度搜索框怎么测试?

有无投递其他公司?妹有。为什么?百度就很好

缺点:对于为什么要投测试回答的不好,没干过测试没办法。忘记录音。

关于项目回答的不是那么完美,应该进行总结,针对简历上的内容进行总结实现扩展

真的难!今年测试都混不上了,寄!


百度测开8.22凉经
面后半小时出结果,凉的透透的。
面试官一进来就问问题,没给自我介绍的时间(来把我刷kpi吧?)

项目自己负责的部分

开发多还是测试多

用你熟悉的语言写个算法,两个链表求和返回链表 例如123(1->2 ->3)+321(3 ->2->1)=444(4 ->4->4 ),说时间复杂度和空间复杂度,再优化算法,使空间为O(1),那么时间复杂度改变了吗?

学过哪些数据库?

你用redis做了什么?

你是说redis比mysql好?

计算机网络学过吧,tcp建立链接怎么保持稳定性?

tcp在那一层?

写俩shell吧,每个进程的cpu利用率怎么获得?

文件内格式为:
k1 k2 k3 k4
k4 k3 k2 k1
求第一列的和

rpc看你学过,一个高并发系统怎么保证稳定性?

上下游程序,下游改动时怎么保证上游不受影响?

git看你学过,我add了一个文件,我想取消add怎么搞?

你改动了代码 git怎么操作?

nginx负载均衡有哪些?

项目难点怎么解决?

docker怎么做的压测?

想不起来了,想起来回来补

没有反问环节(恭喜自己成为kpi分母)


百度 软件测试岗一面(65min)面经分享
项目相关(30分钟)

了解的排序方法?答:对快排和归并比较熟悉

快排和归并的具体实现,时间复杂度;二者的应用场景(差异)

为什么要有数据库而不直接将要存的数据存在硬盘或者网盘里

Mysql事务隔离级别

Linux的常用命令(会问一些具体符号的含义)

Linux中sodu的含义

内存四区(堆区和栈区的区别)

什么是栈溢出,如何解决?

七层网络协议

udp和tcp的区别

算法题:反转链表


百度 测开 一面/二面/三面 面经
流程神速,24号上午一面,一面结束下午马上二面;今天26号三面,是我遇到过流程最快的面试经历了

一面

自我介绍,(自我介绍太长了很明显感觉到面试官有点不耐烦了。。)
项目介绍;
深挖项目,介绍项目中Redis的使用,二次缓存的一致性保证,数据库持久化是怎么做的等等;
最常用的语言?(Java),会不会Python?(回答不会,面试官答没关系来了再学,很快),然后开始八股文;
面向对象七大设计原则;
String、StringBuffer、StringBuilder的区别;还知不知道其他不可变类,如何自己实现一个不可变类;
Java中不同类型的对象在JVM内存结构中存储的位置;
什么是泛型,泛型擦除一定会发生吗;
什么时候服务端会发生大量time_wait和close_wait状态;
手撕算法:实现一个算法,找到两个有序数组所有元素一起的中位数;
针对自己的接口,设计测试用例;
反问。

总结:算法题做的不太好,改半天。
一面结束半个小时通知通过,约下午二面。

二面

自我介绍;
项目介绍;
追问项目;
实习做的都是开发工作,为什么选择测试;
基本的测试流程;
黑盒白盒测试的测试用例设计方法都有哪些;
介绍一下单元测试和冒烟测试;
讲十个Linux的基本指令;
说一下你对SpringBoot和Spring的区别的理解;
SpringBoot自动装配机制的原理;
SpringBoot IOC容器的设计目的,原理,以及依赖注入的方式;
知道哪些设计模式,单例模式懒汉式口述一下怎么写,volatile的作用是什么;
手撕代码:KMP字符串匹配算法;
针对一个零售机进行测试用例设计;
反问。

总结:KMP算法记得不太清楚了,模模糊糊地在面试官的引导下写出来的。测试用例设计这块掌握的还是不太好。
二面结束第三天主管直接打电话约三面。

三面

自我介绍;
项目介绍;
超级深的深挖项目,深到每一个功能点的算法是怎么实现的。。。
为什么选择测试开发;
针对一个IP地址校验的接口进行测试用例设计;(答的不好,面试官后来说是想让我给出具体的关键数据的测试用例)
shell编程会吗,能不能大概介绍一下某个具体的语法;
为什么选择北京;
是考研还是保研的,为什么读研不选择计算机类专业;
讲一个逆袭的经历;
讲一个定下目标但最终放弃了的经历;
讲一个你最讨厌室友的哪一点(???);
反问;

总结:项目深挖挖得有点难受,测试用例设计答的也还是不太行。。。还需要恶补!
但是反问环节结束后面试官让我加他微信,说后续有什么问题随时可以问他,弄得我一脸懵。
祈祷好运祈祷好运!祝大家秋招顺利offer多多!


百度提前批 测开 一面(凉经)
面试小哥人很好,但是!!进去说先自我介绍,我巴拉巴拉说了一大堆,结果电脑设备出问题了,不知道什么时候静音了,。。然后对方听不到我说话,我听不到对方说话,僵持了5分钟,,,
场面一度尴尬。。后来我重进了以下链接,可以了。然后继续自我介绍。。。
面试的问题不难,主要针对简历问 ,我是完全按照简历问的,项目都没问

对测试开发的理解
python 深拷贝浅拷贝 (开背)
装饰器 (开背)
列表表达式
怎么快速反转列表 [::-1]和reverse()函数
匿名函数 使用场景
map reduce 函数

mysql
小哥:怎么往表插入数据?
我 insert
小哥 那怎么快速插入呢 用什么方法 ?
我 不会…

sql语句:一张学生表 有各科成绩,怎么查平均成绩最高的学生?
怎么在python中运用实现mysql?
事务的了解?
我看你会用selenium 说一下常用的等待方法?隐式 显式 强制
追问 使用场景是什么?元素定位问题
追问 怎么使用
driver.impliawait()

手撕代码

1 不用四则运算符 实现两数相加 ?转为二进制 做与异或运算,加上与运算左移的结果,我没写出来。

2 给一个数组,实现奇数在左边,偶数在右边,并且奇数偶数的相对顺序不变 ?按照常规方法写出来了,一个for循环遍历,但是面试官不太满意,说有没有更简单的方法,我想了想,无…应该用双指针的。

反问:

对我有什么建议 应该在学点什么 (我觉得自己太菜了,唉)

前端的东西,可以学一下

多久出结果

快的话三天慢的话 一周

部分做测试开发那个多 都有

对编程语言还有别的要求吗?


一般用python 比较多,别的不要求。。

大概率凉了,能感觉到面试小哥觉得我水平low, 他都没敢深入问我,怕场面尴尬。。。
菜鸡一枚,两道手撕代码,换其他人都是直接秒的,轻喷哈哈


度小满测开凉经
9/3一面 30min

面试官迟到半小时

自我介绍
为什么要转测开
测试微信红包思路
测试自己项目思路
讲一下事务
两道easy算法题:
查找n个字符串公共最长前缀
判断链表是否有环
你认为自己转测开的优势与缺点
反问

二面 30min

面完两分钟发二面链接

自我介绍
为什么要转测开
测试红包雨思路
service是单例还是多例(不会)
乐观锁与悲观锁
左外连接,右外连接,全连接
算法题:
反转链表(没调出来)
反问


百度 提前批一面 面经
7.25 小度质量部 测试开发工程师 面试1h

自我介绍

项目具体情况

实习情况

工作中遇到多进程/多线程的问题

序列号生成的方式

Python多线程和多进程的性能问题(告知面试官自己理论方面是对Java更多了解一些

Java的数据类型有哪些

整型占几个字节、int型数据范围

Java中String类直接赋值一个常量和直接new一个新的对象的区别

equals和==的区别

嵌入式了解吗

了解哪些排序算法,哪些是稳定的、哪些是不稳定的

接口、性能、压测等有接触过吗

如果要评估一个接口的性能,首先要考虑哪几个方面?
【面试官解答:入参和出参其实是在功能测试上去做的。如果考虑性能,比如压测就是:大量的请求查看CPU、内存的占用
另外要注意考虑下游服务,关注接口会到哪些下游去请求,不要单单接口没什么问题,结果把下游的搞挂了(事故)】

数据库了解吗,关键字有哪些

知道数据索引吗,为什么说索引能提高效率呢?
【面试官解答:由于在数据库中存储的数据本身是无序的,索引就是把这些弄出来弄成有序】

HTTP请求状态码

浏览器输入URL发生了什么?经历了哪些阶段。

测试接口时发现返回和预期不一致,应该怎样分析?

如果postman抓包或浏览器发现请求的数据没有问题?怎样分析(前端、后端团队出了问题?)

字典、数组、链表、队列、堆栈了解吗

数组是连续的空间,扩容拷贝是谁做的,具体的原理。扩容的大小?

队列、堆、栈的区别,函数调用另一个函数是用什么数据结构实现的

Java里面有几种锁

Shell命令有哪些

26.【算法题】青蛙跳台阶,一次可以跳1或2个台阶,问:N级的台阶总共有多少种跳法。

分析递归方法的时间复杂度(2**n)和空间复杂度(最深路径时为n)

反问:

目前小度质量部小组内有哪些工作。

【服务端:接口测试\压测、功能测试、平台开发、case添加

端上:APP(ios\安卓)

冰箱:安卓和Linux、嵌入式等】
————————————————
版权声明:本文为CSDN博主「爱吃 香菜」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wx17343624830/article/details/128778446

 

 

 

 

 

一面

 1.自我介绍

2.离职原因

3.离职之后为什么没找到满意的工作

4.介绍一下招投标项目

5.为什么要做压测

6.这个项目里,自动化的目的是什么

7.上线之后缩短了7天,那之前是多少天

8.3月之后在做什么

9.介绍一下外卖订单增加监控

10.报警信息报给谁

11.都有哪些环节存在超时问题

12.每个环节的报警信息都要分别报给不同的负责人吗

13.收到报警之后怎么推进

14.介绍一下外卖履约系统

15.印象深刻的bug

16.通过这个bug学到了什么

17.测过(移动)端吗

18.安装包是从哪来的

19.怎么打的安装包

20.手撕代码:给一个内容为数字的数组,找出最大连续子数组之和

21.找出最大连续子数组

22.怎么测试一个秒杀系统:1000个库存,某天的0点开始

21.如果实际有1个库存,用户看到没有库存,怎么定位问题

22.猜测一下可能是后端的什么问题

23.希望测端还是测server

 

 

二面

1.自我介绍

2.离职原因

3.讲招投标项目,我负责哪些工作,流程是什么样的

4.怎么保证质量的(需要提到用例评审)

5.是项目还是迭代

6.测试过中间件吗

7.发了一个入参,但页面展示错误,怎么定位问题

8.监控怎么写的

9.一般会检查哪些问题

10.selenium在什么项目中用的

11.有什么收益

12.执行完成之后会自动关闭浏览器吗

13.关闭浏览器之后,后续操作是不是又要手动操作

14.selenium有没有不关闭的状态

15.整个项目里做的最好的部分

16.这个框架有推广到同事吗

17.整个项目里做的不足的部分

18.属于边界值没有考虑完全,还是需求没提到

19.后续如何优化的

20.讲外卖项目,我负责哪些工作,流程是什么样的(查订单,下游能不能消费)

21.这里的监控和刚才的监控有什么区别

22.监控写在业务代码里,会有问题吗

23.hashmap和hashtable的区别(线程安全,存储)

24.java有多少种线程池

25.监控业务代码里用到多线程了吗

26.进程和线程

27.java实现多线程的方式

28.java怎么保证线程安全(加锁和解锁,原子化)

29.try catch中return了,finally会执行吗

30.http有哪些请求方式

31.get和post的区别

32.写sql:修改列名

33.join和where有什么区别(连查)

34.设计用例:遥控器

35.手撕代码:冒泡排序

36.住在哪里

37.便利蜂加班吗

38.平时看什么书?会用到工作中吗

39.更倾向于看书还是搜索来学习

40.搜索看博客还是简书,还是其他的

41.学习通过视频快,还是文字快