数美科技时代测试开发岗面经及答案

发表于:2020-3-13 11:28

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Apollo    来源:CSDN

  前言
  通过其他了解了这家公司,风评不好,心里也不是很高兴,主要还是觉得可惜。但是面试官让我有所改观,希望面试官能有好的发展。被那么多个面试官面试过,这家的面试官是第一个肯定我个人能力的一个。总体觉得自己,网络方面比较基础的东西还都比较熟悉。对于测试也是有自己的理解。主要没问到Java,面试官也不是(废话)Java方向的,要是问底层,源码,springboot底层,acm的算法,我肯定又凉。
  确实有成长,但还要继续!
  面试题
  1.介绍自己
  2.测试流程
  3.工作中用什么工具?缺陷管理?用例文档的管理?
  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.公司的代码管理工具?
  23.谈谈对性能测试的理解?
  24.说下软件测试的目的?
  部分答案
  1.介绍自己
  学校,学院,专业。近期的实习,实习公司以及实习的工作内容。再往前的项目开发经验,编程语言。
  2.测试流程
  需求评审、用例编写、用例评审、冒烟测试、测试环境的轮次测试、模拟环境回归、线上环境回归。
  3.工作中用什么工具?缺陷管理?用例文档的管理?
  缺陷管理:jira、文档共享:confluence、接口测试:postman、抓包工具:fiddler、性能测试:jmeter。
  4.测试用例以什么方式写?
  测试点:xmind、processon以思维导图的形式;
  测试用例:excle以表格的形式。
  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命令呢,但是没有,哎

      上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号