前言
通过其他了解了这家公司,风评不好,心里也不是很高兴,主要还是觉得可惜。但是面试官让我有所改观,希望面试官能有好的发展。被那么多个面试官面试过,这家的面试官是第一个肯定我个人能力的一个。总体觉得自己,网络方面比较基础的东西还都比较熟悉。对于
测试也是有自己的理解。主要没问到Java,面试官也不是(废话)Java方向的,要是问底层,源码,springboot底层,acm的算法,我肯定又凉。
确实有成长,但还要继续!
面试题
1.介绍自己
2.测试流程
4.测试用例以什么方式写?
5.你觉得测试和开发有什么区别?
6.数组和链表插入一个数据的时间复杂度是多少?
7.单向链表和双向链表有什么区别?
8.栈和队列的区别?
9.有在哪些实际应用场景用到过栈?
9.2.满二叉树和完全二叉树有什么区别?
10.说一下计算机网络的体系模型?七层?五层?每一层都说一下?
11.除了ARP,你知道R-ARP协议吗?有哪些应用场景呢?
12.知道dns协议吗?大概说一下。
12.2.拥塞控制说一下?
12.3你说的拥塞控制是比较传统的一种,有没有想过它有什么缺陷?
12.4建议了解一下新的拥塞算法。
13.性能测试需要关注哪些指标?
14.并发用户数和吞吐量之间有什么关系?
15.jmter怎么用的?
16.tcp是哪层的?ip呢?
17.网络编程,socket达成连接和进行数据传输的端口是不是同一个?
18.linux常用的命令有哪些?
19.说下top命令中都有什么信息?
20.top之后,和cpu有关的字段有哪些?怎么理解?
21.说下mysql和redis的区别?为什么要拿redis做缓存?
22.公司的代码管理工具?
部分答案
1.介绍自己
学校,学院,专业。近期的实习,实习公司以及实习的工作内容。再往前的项目开发经验,编程语言。
2.测试流程
需求评审、用例编写、用例评审、冒烟测试、测试环境的轮次测试、模拟环境回归、线上环境回归。
3.工作中用什么工具?缺陷管理?用例文档的管理?
缺陷管理:jira、文档共享:confluence、
接口测试:postman、抓包工具:fiddler、性能测试:jmeter。
4.测试用例以什么方式写?
测试点:xmind、processon以思维导图的形式;
5.你觉得测试和开发有什么区别?
开发者:从0到1去创造一个软件,可能完成度达到90%就觉得这个软件可以交付给测试了,开发者是软件实现者,底层逻辑都是开发人员更懂;
测试者:一开始拿到的东西就是有基本形状的,不用考虑细节如何实现,只需要找到软件与需求描述不一致的地方,比如界面、功能、性能等等。测试者主要起到一个质量把控的作用。
6.数组和链表插入一个数据的时间复杂度是多少?
假设为:在p,q之间插入m
数组插入一个数据,需要移动插入位置之后的元素,腾出一个位置给待插入数据,然后再插入该数据。根据所插入位置的不同,需要移动元素的个数也不同,取平均状态,时间复杂度为O(N);
链表插入一个数据,只需要改动插入位置前的节点的指针,首先把带插入元素m的指针指向p->next,再把p->next = m就完成了,所以时间复杂度为O(1)。
7.单向链表和双向链表有什么区别?
首先,节点的结构是不同的。单向链表的节点由一个数据域和一个指针域组成,所有指针域都指向一个方向。而双向链表的节点是由一个数据域和两个指针域组成的,两个指针域可以分别指向上一个元素和下一个元素。
其次,对于查找数据来说,单向链表只能从头开始,顺序往下找,而且不能找前驱。双向链表就可以找后继也可以找前驱。
但是双向链表在空间上,是占用比较多的。
引用一段博客内容:单向链表和双向链表
8.栈和队列的区别?
栈:前进后出,有栈顶和栈底,出栈和入栈都是通过栈顶;
队列:先进先出,有队头和队尾,队头出,队尾入。
9.有在哪些实际应用场景用到过栈?
栈的使用场景:
1.逆序输出
2.语法检查,括号匹配
3.十进制转二进制
栈的使用场景
9.2.满二叉树和完全二叉树有什么区别?
满二叉树:叶子结点只能在最后一层出现
完全二叉树:叶子结点只能在最后一层及倒数第二层出现,且在同一层,不允许左边有叶子,右边有子节点的情况。
10.说一下计算机网络的体系模型?七层?五层?每一层都说一下?
osi:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
tcp/ip:物理层、数据链路层、网络层、传输层、应用层
物理层:基本传输单位为比特,相关协议有IEEE 802.3之类。传输介质有双绞线、同轴电缆、光缆等等。
数据链路层:基本传输单位:帧。
主要:(1)封装成帧;(2)流量控制;(3)确认和重传机制
主要协议有:ppp网络层:基本传输单位:分组
主要功能:将报文分成一个个的分组,通过网络设备,从源端传到目的端。
提供的服务:(1)电路服务;(2)数据包服务。
主要协议:ICMP,IGMP,IP,ARP,RARP
传输层:基本传输单位:报文
主要功能:实现端到端的传输
主要协议:TCP,UDP
应用层:基本传输单位:报文
主要协议:HTTP,HTTPS,FTP,DNS,
11.除了ARP,你知道R-ARP协议吗?有哪些应用场景呢?
盲猜是拿mac找ip,结果猜对了。ARP-地址解析协议,拿ip地址找mac地址。以广播的形式将询问报文发给各个设备,对应ip地址的设备会返回报文,其中含有mac地址。
12.3你说的拥塞控制是比较传统的一种,有没有想过它有什么缺陷?
第一、阈值的选定,对于不同的网络环境,可能效果有好有坏
第二、在发生超时或者丢包之后,才会进行相关措施,但错误已经发生了,并没有规避风险。在一定程度上是亡羊补牢。
13.性能测试需要关注哪些指标?
我说了cpu占用、磁盘使用、吞吐量,提示我还有响应时间等。
14.并发用户数和吞吐量之间有什么关系?
饱和值前是线性关系,饱和值后可能不变,可能下降。
18.linux常用的命令有哪些?
提到了文件查看的:cat tac more less head tail
权限:chmod chown
其他:top
21.说下mysql和redis的区别?为什么要拿redis做缓存?
因为快,某些一定会追问为什么redis快?但是没有。
22.公司的代码管理工具?
git,以为会问我git命令呢,但是没有,哎
原文链接:http://www.51testing.com/html/32/n-4464832.html