测开面经

百度
二面

自我介绍

怎么看待测开

介绍下覆盖率 异常怎么去考虑测试:构造异常的特殊情况,覆盖每一个条件case

异常情况很多的情况下怎么覆盖: 等价类、判定表等等

项目介绍

短信验证码登陆业务介绍:从cookie到sessioo到redis的优化

难点和挑战性内容:拦截器、双层过滤、锁的优化、事务失效的处理、超买超卖、一人一单、缓存三大问题、雪花算法唯一id

怎么考虑项目上线的优化和缺陷 :用户量预估、服务器准备、流量控制(限流(令牌桶、漏桶)、降级保证基础功能)

数据结构

队列、栈、堆介绍以及优缺点:

队列讲了下数组、链表两种实现,先入先出;

栈后入先出,讲了下程序维护虚拟机栈,保存栈帧,实现递归操作,可以做括号匹配啊之类的;

堆的话完全二叉树,大根堆、小根堆,讲了下TopK问题,讲了下桶排序,可以维护数据量很大时候部分数据在磁盘的排序,排行榜。

网络

常见http状态码

1xx、2xx、3xx、4xx、5xx分别对应什么和举例

假设你前端的按钮点击没有效果,你会怎么去排查这个bug?

前端:控制台、看url、协议、端口、参数是否传递正确,看响应码、相应的对应响应体

后端:看后端日志、数据库相关数据变化、redis等缓存的数据变化

浏览器输入baidu.com到游览器解析页面的全过程

这个是url嘛,dns从域名获取到ip,简单讲了下dns缓存,上游服务器,根服务器。

然后http连接前建立tcp三次握手,简单讲了下三次握手和对应状态

然后发送http请求和连接,顺带讲了下http和https的区别,讲了下非对称、对称加密

最后结束回话四次挥手断开连接

怎么解析http响应

会有个标识相应类型 比如html 然后游览器进行解析渲染

场景

微信发红包进行测试,说说你的思路?

功能测试、性能测试、兼容性测试、界面测试、安全性测试

代码:

设计一对一发红包和群红包(等分/拼手气)?

思路:考虑下存储的数据类型,精确处理金额,做个最大限额、最小值限定、非负。均分or随机若干份最小和累加为总量即可。然后每一份仅能由一个用户id获得,多线程考虑下线程安全问题,其实就是类似超买超卖(接受多了or少了钱)、一人一单(不能多抢)。

反问

我们这边在主要做什么

三面 接着二面

为什么选择测开

个人规划

实习时间、最早到岗时间

闲聊hhh

发面经攒人品 许愿oc😋
全部评论
更新 已oc
5 回复 分享
发布于 07-26 13:26 北京
大佬太强了
3 回复 分享
发布于 07-28 20:09 广东
搜狐畅游
校招火热招聘中
官网直投
时至今日,我才发现,我与大佬的距离就仿佛夏天和冬天
2 回复 分享
发布于 07-28 21:09 北京
三面是HR还是技术
1 回复 分享
发布于 07-26 13:26 广东
感觉好难啊问得
1 回复 分享
发布于 07-27 01:41 广东
很牛,这个面经说是开发都不为过了
1 回复 分享
发布于 07-29 15:14 广东
感觉还挺难的
点赞 回复 分享
发布于 07-25 22:33 陕西
提前批吗,还是校招
点赞 回复 分享
发布于 07-26 16:42 江苏
为啥去测开呢
点赞 回复 分享
发布于 08-08 22:14 北京
求助,日常实习在哪儿找啊佬
点赞 回复 分享
发布于 08-17 16:18 河北

相关推荐

bg:双非本 211硕 双控专业 属于万金油专业 当然也属于什么都懂 什么都不懂 主要看自己发展投递岗位:百度 测试开发 岗位是找五个人还是十个人来着时间线:8.15投递 8.25笔试 9.2测评8.25两小时笔试 两部分 选择和编程选择部分:选择内容挺杂的,有SQL数据库相关的,有神经网络相关,竟然还会问模型泛化的条件什么的,有Linux相关的操作系统题目;选择题部分是单选和多选混杂的,做的时候要注意一下。编程两个 一个是 找字段中重复的字符数:#include <iostream>#include <string>using namespace std;bool appearsTwice(const string &s, const string &target) {    int first = s.find(target);    if (first == string::npos) return false;     int second = s.find(target, first + target.length());     return second != string::npos; }int main() {    int T;    cin >> T;     while (T--) {        int n;        string s;        cin >> n >> s;         if (appearsTwice(s, "aba")) {            cout << "YES" << endl;        } else {            cout << "NO" << endl;        }    }    return 0;}一个是算一个数组中要求数字的距离:#include <iostream>#include <vector>#include <algorithm>#include <climits>using namespace std;int main() {    int n;    cin >> n;    vector<int> arr(n);    for (int i = 0; i < n; ++i) {        cin >> arr[i];    }    int maxValue = INT_MIN, minValue = INT_MAX;    int maxPos = -1, minPos = -1;    for (int i = 0; i < n; ++i) {        if (arr[i] > maxValue) {            maxValue = arr[i];            maxPos = i;        }        if (arr[i] < minValue) {            minValue = arr[i];            minPos = i;        }    }    int initialDistance = abs(maxPos - minPos);    int distanceAfterRemovingFirst = abs(maxPos - (minPos == 0 ? 1 : 0));    int distanceAfterRemovingLast = abs(maxPos - (minPos == n-1 ? n-2 : n-1));    int result = max({initialDistance, distanceAfterRemovingFirst, distanceAfterRemovingLast});    cout << result << endl;    return 0;}#通信硬件人笔面经互助#
查看5道真题和解析 投递百度等公司10个岗位 通信硬件人笔面经互助
点赞 评论 收藏
分享
24 115 评论
分享
牛客网
牛客企业服务