很多同学都想得到滴滴出行的实习或者校招机会。那从过来人的角度谈谈,要通过滴滴出行的实习、校招面试,都有哪些经验和注意事项呢?今天就跟大家分享一下。
总体情况:视频面试 上午一面,下午二面
【一面】
1、TCP 和 UDP 的区别
(1)连接性
TCP是面向连接的协议,在收发数据前必须和对方建立可靠的连接,建立连接的3次握手、断开连接的4次挥手,为数据传输打下可靠基础;UDP是一个面向无连接的协议,数据传输前,源端和终端不建立连接,发送端尽可能快的将数据扔到网络上,接收端从消息队列中读取消息段。
(2)可靠性
TCP提供可靠交付的服务,传输过程中采用许多方法保证在连接上提供可靠的传输服务,如编号与确认、流量控制、计时器等,确保数据无差错,不丢失,不重复且按序到达;UDP使用尽可能最大努力交付,但不保证可靠交付。
(3)报文首部
TCP报文首部有20个字节,额外开销大;UDP报文首部只有8个字节,标题短,开销小。TCP协议面向字节流,将应用层报文看成一串无结构的字节流,分解为多个TCP报文段传输后,在目的站重新装配;UDP协议面向报文,不拆分应用层报文,只保留报文边界,一次发送一个报文,接收方去除报文首部后,原封不动将报文交给上层应用。
(4)吞吐量控制
TCP拥塞控制、流量控制、重传机制、滑动窗口等机制保证传输质量;UDP没有。
(5)双工性
TCP只能点对点全双工通信;UDP支持一对一、一对多、多对一和多对多的交互通信。
2、sql 命令,select,sum,group by like
(1)启动服务:sudo /usr/local/MySQL/support-files/MySQL.server start
(2)停止服务:sudo /usr/local/MySQL/support-files/MySQL.server stop
(3)重启服务:sudo /usr/local/MySQL/support-files/MySQL.server restart
(4)连接数据库:cd /usr/local/MySQL/bin/./MySQL -uroot -p接着按提示输入密码
(5)远程连接:sudo ssh root@远程ip地址接着输入远程服务器登录密码MySQL -u root -p -h localhost按提示输入密码
(6)停止服务:exit/quit
(7)查看版本:select version()
3、怎么测试滴滴软件
4、 进程和线程区别
进程都有自己的独立数据空间,程序之间的切换开销大;线程也有自己的运行栈和程序计数器,线程间
5、死锁是什么,如何解决
6、API 测试
API测试 从本质上来说,API测试是用来验证组成软件的那些单个方法的正确性,而不是测试整个系统本身. API测试也被称为单元测试(Unit Testing), 模块测试(Module Testing), 组建测试(Component Testing), 以及元件测试(Element Testing).
7、写反转字符串, 写类的多态
8、怎么测试 PC 端
【二面】
1、介绍实习经历
2、如何防范 sql 注入(java 框架下)
通过多个环节的检查,一般是可以避免 SQL 注入的。 有些人认为存储过程可以避免 SQL 注入,存储过程在传统行业里用得比较多,对于权限的控制是有一定用处的,但如果存储过程用到了动态查询,拼接 SQL,一样会存在安全隐患。
3、远程 debug 排查问题的流程
4、检测 sql 注入的方法有哪些
SQL注入各个类型检测方式 http: //127.0.0.1/ day6 /1. php?id =1 union select 1,name,pass from admin 数字型 数字型不用特意加字符,直接 and1=2检测是否有注入点; http://127.0.0.1/day6/1.php?key=- test\' union select 1,name,pass from admin --+ 字符型
5、灰盒测试是什么
灰盒测试,是介于 白盒测试 与 黑盒测试 之间的一种测试,灰盒测试多用于 集成测试 阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。
6、接口测试
接口测试的用例设计与单元测试有相似之处。都需要用到如:边界值法,等价类法等基本测试方法。首先,设计接口测试用例的出发点是要验证接口实现的功能与性能指标与接口设计文档的一致性
7、定位 bug 到什么级别
8、sql 注入原理是什么
9、sql 语句,创建表,并查出前 10 个
10、逻辑题:N 个糖果排成一列,从 1 到 N 两人取,每次只能取其中任意一个或者连续两个,先手如何必胜
11、测试用例,写 web 的登录和 app 的登录
想要更多滴滴出行实习、校招的机会,请点击这里