字节跳动测试面试

字节跳动测试面试

    • 服务相关问题
    • shell、Linux命令:
    • 网络相关问题:
    • Python相关问题:
    • 数据库相关问题:
    • 设计模式相关问题:
    • 其他测试相关问题:
    • 总结

服务相关问题

1、介绍下你们都有哪些服务,互相的调用关系。
2、介绍下你工作中用到最重要的服务,讲解下。

shell、Linux命令:

1、将一个文件夹下面小于100KB的文件复制到另一个文件夹下

	files = 'find /root/logs/tuia/ -size -100k'
	for file in ${
     files}
	do
	cp ${
     file} /root/logs/tuia2/
	done

网络相关问题:

1、介绍一下状态码
https://www.cnblogs.com/A-FM/p/11764902.html
2、你们公司服务与服务之间的调用用的是HTTP还是RPC?
都有
3、介绍HTTP和RPC的优劣
https://www.cnblogs.com/A-FM/p/11764902.html

Python相关问题:

1、dict的底层实现原理
python的dict和java的map一样,底层还是数组,每个键值对都是通过key的哈希值对dict的长度取余然后存放在对应的index里面,这是理想的情况,一般可能会产生哈希冲突,为了解决哈希冲突,每个index会变成链表,最新的是链表长度小于7还是链表,大于7以上会转成红黑树。这样最优的情况下能提高一半的访问速度。
如果这个回答上了可能还会问:

  • 介绍下哈希的概念和哈希冲突
  • 介绍下树、二叉树、平衡二叉树、红黑树
  • 这里的链表和树的临界值为什么是大于7,而不是其他的值

2、介绍下深拷贝、浅拷贝
https://www.jianshu.com/p/a8f1af357046

数据库相关问题:

1、介绍下索引
关键词:普通索引、唯一索引、主键索引、组合索引、聚集索引、非聚集索引、平衡树(b/b+树)、索引优劣
https://blog.csdn.net/weixin_42181824/article/details/82261988
https://www.cnblogs.com/klb561/p/10666296.html
2、如果一个很复杂的多表查询,只有一个索引,要如何优化

  • 可不可以优化索引,添加索引(不是无畏的添加)
  • 优化SQL,使用最左原则等等。
  • 具体问题具体分析
  • Explain详解
    这个命令来查看一个这些SQL语句的执行计划
    https://www.cnblogs.com/tufujie/p/9413852.html

3、你们为什么要用到redis
https://www.jianshu.com/p/393bdb7fe75d
https://www.cnblogs.com/jebysun/p/9417699.html

4、为什么不直接用数据库而是数据库+redis
和为什么用redis其实算一个问题
5、说明一下redis里的数据类型
Redis支持五种数据类型:

  • string(字符串)
  • hash(哈希)
  • list(列表)
  • set(集合)
  • zset(sorted set:有序集合)

6、说明一下redis的缓存击穿
https://baijiahao.baidu.com/sid=1619572269435584821&wfr=spider&for=pc
7、会直接用命令行调用redis
https://www.runoob.com/redis/redis-keys.html
8、如果是Python的话你怎么调用redis,说几个Python调用redis的常用命令*
https://www.runoob.com/w3cnote/python-redis-intro.html

设计模式相关问题:

1、介绍下设计模式

其他测试相关问题:

1、埋点是如何测试的?有专门的的自动化测试埋点的方案么?
2、你们的环境搭建过程,全是中台么?如果是自己搭建如何搭建?
3、抓包工具你们会二次开发么?
4、自动化除了API和GUI层面的还有其他的么?

总结

1、有些问题平时都是知道的,但是用的时候也是直接百度的,面试过程直接让写出来就有点难了(主要还是自己太菜),感觉面试官会将个人的技术点会打标成:不会、了解(需要百度的)、熟悉几个档次。总之就是还是多学多练,没有其他途径了。

你可能感兴趣的:(字节跳动,面试,测试工程师,python)