哔哩哔哩(B站)

测试开发实习二面面经

完整信息

13 条问法 · 13 道题

本篇目录

最近参加了B站测试开发实习的二面,整体大约45分钟,主要包括自我介绍、项目深挖、手撕算法、计算机基础和业务场景测试。目前还在等结果,分享一下具体的面试过程,给后续面试的同学参考~

📌 一、项目深挖(约10分钟)

开头是常规自我介绍,随后面试官针对简历中的RAG智能问答项目展开提问。

主要问题:

① 介绍一下项目整体架构和运行流程。

② 离线文档是如何解析和分块的?

③ 文本分块之后如何存储和建立检索?

④ 用户提问后,系统是如何搜索并生成回答的?

整体比较关注项目的实际实现流程,没有特别深入的理论问题。

💻 二、手撕算法(约20分钟)

LeetCode 15:三数之和(Medium)

要求找出数组中所有和为0的不重复三元组。

一开始尝试排序+双指针,但实现过程中遇到问题,后面换成三重循环暴力求解。

最终代码能够正常运行,也通过了一部分测试用例,但是去重没有完全处理好,没能AC。

后面向面试官解释了原本的双指针思路。

这道题花的时间比较长,感觉现场编码能力和边界处理还是需要加强。

📚 三、计算机基础八股

主要问了3道:

① TCP为什么是三次握手、四次挥手?为什么挥手比握手多一次?

② Python装饰器是什么?有什么作用?

③ 如何判断MySQL查询没有使用到索引?应该怎么排查?

这部分答得一般,尤其Python装饰器和MySQL索引排查没有准备充分。

🧪 四、业务场景测试

场景:设计一个抢优惠券功能的测试方案。

业务要求:

① 每个用户ID最多领取一张优惠券。

② 每天8:00~10:00开放领取。

③ 优惠券需要在指定时间内使用。

④ 支持H5、Web和手机端。

问题1:如何设计测试用例?

主要从正常功能、异常情况、时间边界、重复领取、数据库一致性、多端兼容和并发场景等角度回答。

问题2(追问):用户显示抢券成功,但是实际使用时发现优惠券不可用,应该如何排查?

我主要回答了几个方向:

① 检查数据库是否真正写入成功,有没有事务未提交的问题。

② 检查优惠券的有效期、使用时间和相关限制。

③ 检查网络请求及前后端状态是否同步。

感觉这部分更偏向实际业务测试和故障定位,除了设计测试用例,还需要理解后台的数据处理流程。

🙋 五、反问环节

① 团队日常测试是负责固定业务模块,还是按照需求承担不同的测试任务?

② 测试开发实习生平时主要负责哪些工作?

📝 六、个人总结

整体面试节奏比较紧凑,面试官的提问覆盖面也比较广。

项目方面比较重视实际实现细节,需要能够完整讲清楚系统流程。

算法方面不只考察思路,还要能在有限时间内写出正确代码,去重和边界条件很重要。

八股涉及计算机网络、Python和MySQL,建议结合实际开发场景理解。

业务测试方面,除了正常功能和边界条件,还要考虑并发、数据一致性以及实际故障排查。

个人感觉是一场比较综合的测试开发技术面试,也暴露了自己在算法编码和基础知识方面的一些不足。

本篇目录
  1. 01
  2. 02
  3. 03
  4. 04
  5. 05
  6. 06
  7. 07
  8. 08
  9. 09
  10. 10
  11. 11
    问题2(追问):用户显示抢券成功,但是实际使用时发现优惠券不可用,应该如何排查?
  12. 12
    反问
    团队日常测试是负责固定业务模块,还是按照需求承担不同的测试任务?
  13. 13

相关公司