测试开发常见面试题总结

一、Linux相关

1. grep与find的区别?

   grep是查找匹配条件的行,find是搜索匹配条件的文件。grep的全称是global regular expression print 全局正则表达式版本,能够使用正则表达式查找匹配条件的行。

2. 查看IP?

  ifconfig

3. 说一下awk?

     awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk的处理文本和数据的方式:它逐行扫描文件,从第一行到最后一行,寻找匹配的特定模式的行,并在这些行上进行你想要的操作。如果没有指定处理动作,则把匹配的行显示到标准输出(屏幕),如果没有指定模式,则所有被操作所指定的行都被处理。awk分别代表其作者姓氏的第一个字母。因为它的作者是三个人,分别是Alfred Aho、Brian Kernighan、Peter Weinberger。gawkawkGNU版本,它提供了Bell实验室和GNU的一些扩展。下面介绍的awk是以GUN的gawk为例的,在linux系统中已把awk链接到gawk,所以下面全部以awk进行介绍。


4. 正则表达式


5.杀死某一端口号的进程的方法?

(1)netstat -nlp 查看占用端口号的服务
(2)找到该端口号的进程
(3)找到该进程id
(4)kill它

https://zhidao.baidu.com/question/748566541881044772.html



7. 查看当前目录指令?

   pwd

8. 查看进程指令,讲一下该指令的参数和作用

ps

更详细的: https://blog.csdn.net/qq_16209077/article/details/52781874

9. 查找某个文件后100行中子串word出现的行


10. Linux中的grep和awk作用?

grep 主要用于搜索某些字符串,以行为单位
sed,awk 用于处理文本 ,可对行细分,处理文本

grep基本是以行为单位处理文本的; 而awk可以做更细分的处理,通过指定分隔符将一行(一条记录)划分为多个字段,以字段为单位处理文本。awk中支持C语法,可以有分支条件判断、循环语句等,相当于一个小型编程语言。
更详细的:https://blog.csdn.net/jjrfjyfjyfjdfjrujdjd/article/details/41792841

11. Linux中怎么选出文件中符合要求的某一列?


12. linux查看进程状态的命令?

ps

更详细的:https://blog.csdn.net/qq_16209077/article/details/52781874

13. Linux更改文件权限的命令

chmod

14. Linux怎么求某个成绩文件中某一列的平均值?

15. 有没有使用过linux系统?请列举你常用的命令。

16. linux系统下,机器间传送文件有哪些方式?

https://blog.csdn.net/gatieme/article/details/51673229


二、数据库相关

     1. 如何删除表结构中的某一列?

    ALTER 

     2. index的作用

     3. having和where的区别

     4. 说一下ACID特性

     5. 写一个SQL语句,左连接和右连接

     6. SQL中的通配符是什么?

      7.SQL中的GROUP BY有什么用?

      8. SQL中的SELECT *FROM*WHERE是做什么的?




三、计算机网络相关

      1. TCP和UDP的区别,各自用在什么场合?

     TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。
UDP---用户数据报协议,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快
      一个是可靠传输,一个是不可靠传输.可靠传输需要的开销大,因为要有确认回复.而UDP则是不需要回复确认的.像我们浏览网页,迅雷下载等等用的就是 TCP协议 ,玩网游,看在线视频一般都是用 UDP协议 .然而随着现在应用程序的不断完善,渐渐弥补了UDP的不可靠性

      2. 用URL登录网站时需要哪些协议?http://www.cnblogs.com/dengzz/p/5544122.html


      3. 浏览器中输入一个URL的响应过程 (回车,返回一个页面的过程) 中涉及到哪些操作?

        http://www.cnblogs.com/dengzz/p/5544122.html

      4. Http1.0和Http1.1的区别,Http和Https,SSL协议

         https://www.cnblogs.com/gofighting/p/5421890.html

      5. HTTP常用的方法有哪些?POST和GET区别?

      常用方法  http://www.runoob.com/http/http-methods.html

      区别  https://blog.csdn.net/q179886903/article/details/52741327

      6. 了解SYN包吗?讲一下具体应用(讲了TCP三次握手过程,主动讲了TCP超时计时器可以保证可靠传输,又问了 TCP还有什么保证可靠传输的机制,握手 拥塞控制)

      7.socket编程过程(服务器 客户端,结合三次握手讲了一下)

      8.TCP客户端和服务器端的API函数?

       9.有A、B两个服务器节点,A发一个文件给B,但B没有收到,请发散你的思维,说出可能是由哪些情况造成的。

       10.TCP/UDP/http的区别。

         https://www.cnblogs.com/gaopeng527/p/5255827.html


四、多线程相关

      1. 进程和线程的区别?线程是怎么划分的?

        https://blog.csdn.net/qq_32575047/article/details/80148379

      2.进程的空间分为哪些部分?

       https://www.nowcoder.com/questionTerminal/3147a7b0cd174879bed8d555081376a2

      3. 什么是死锁?

      https://blog.csdn.net/joejames/article/details/37960873


五、数据结构与算法相关

     1. 实现链表的逆序(反转),解释思路,写代码

      注意:考察有两点,一个是对实现思路的考察,一个是对特殊输入的考察,严谨性

      2. 如何判断一个链表是环形链表,解释思路,写代码

      3. 给定二叉树的先序遍历及中序遍历,请写出中这颗二叉树的后序遍历结果,并解释思路

      4. 链表的增删改查

      5. 手写快速排序算法,并设计测试用例

      6. 字符串反转

      7. 二叉树反序列化

      8. 二叉树的中序遍历,递归实现和非递归实现

        根据中序遍历的顺序,对于任一结点,优先访问其左孩子,而左孩子结点又可以看做一根结点,然后继续访问其左孩子结点,直到遇到左孩子结点为空的结点才进行访问,然后按相同的规则访问其右子树。因此其处理过程如下:(1)若其左孩子不为空,则将P入栈并将P的左孩子置为当前的P,然后对当前结点P再进行相同的处理;(2)若其左孩子为空,则取栈顶元素并进行出栈操作,访问该栈顶结点,然后将当前的P置为栈顶结点的右孩子;(3)直到P为NULL并且栈为空则遍历结束

      9. strcpy函数,编写测试用例

     https://zhidao.baidu.com/question/1769577048176015260.html

     10. 找出三位数中各个位的平方和等于原来数大小的数字,编写测试用例

     11. 找出一个数组中和为m的所有可能组合?

     12. 洗牌,如何保证每张牌经过洗牌后,不在现在的位置上

     13. 给出两个API getChilds()getFather()求多叉树第n层节点数?

     14. 写双向链表插入删除?

     15. 二叉树怎么分层遍历每一层节点?

    16.统计一个文件中每个单词的出现次数

     https://blog.csdn.net/lqadam/article/details/52689545

六、编程语言相关

     1.值传递和引用传递的区别?

     2. static的作用和使用方法?

     3. HashMap和Hashtable的区别?以及ConCurrentHashMap,区别原理?

     4. 抽象类和接口的区别?

     5. 多线程的实现方式?Volatile和ThreadLocal的理解及其作用?

     6. JAVA异常处理机制

     7. 多态怎么体现的

     8. map是怎么实现的?

      https://segmentfault.com/a/1190000011351123

     9. map与hash_map的区别?

     https://zhidao.baidu.com/question/1899979592235797100.html



 

七、测试开发相关

    1. 你了解哪些常用的测试方法?

     https://www.douban.com/note/619888861/

    2. 为什么做测试开发,谈谈你对测试开发的理解
     https://www.zhihu.com/question/20269633

    3. 设计一个测试计划,包括测试进度和所需要人员

https://jingyan.baidu.com/article/219f4bf7e4a5f3de442d38f6.html

    4. 功能测试包括哪些方面的测试?

    5. 功能测试有哪些方法(答了等价类,边界值,因果图,让解释了一下等价类)

http://www.51testing.com/html/89/n-3719689.html

    6. 测试电梯,设计测试用例

https://blog.csdn.net/slforeverlove/article/details/47080279

    7. 对测试的看法?讲了测试具体要承担的职业,让继续说,又说了测试需要具备的能力,还让继续,又说了测试和开发沟通的问题

    8. 为什么做测试?怎么学习测试的?学习了哪些东西?

    9. 设计测试用例的方法?

http://www.51testing.com/html/30/n-3719130.html

   10. 测试用例要素

https://wenku.baidu.com/view/5bcc4dd5240c844769eaeeb5.html

   11. 软件测试方法的分类?

https://blog.csdn.net/javaxiaobenhai/article/details/49032397

    12. 黑盒测试的测试用例设计方法?

https://www.cnblogs.com/magicianyin/p/7240929.html

    13. 自动测试的软件有哪些?

http://www.51testing.com/html/11/15160311-3714581.html

    14.  对美团的一个活动页面做测试

    15. 什么是冒烟测试?

https://zhidao.baidu.com/question/280813991.html

    16. 什么场合自动化测试不适合?

https://www.douban.com/note/160172309/

    17. 用过什么测试软件?

     18.Web测试,给你一个登陆界面怎么进行测试?什么是性能测试?

      http://www.51testing.com/html/74/n-867174.html

     19.给一个字符串转换为整数的函数怎么进行测试?





八、其他

   1. 自我介绍

   2. 项目介绍,项目中最大的收获,项目中或实习中做过什么软件测试的构造?

   3. 项目负责的模块占整个项目的百分之多少?负责的模块难点在哪?请详细介绍你的一个项目,并介绍你在其中承担了什么样的责任。

   4. 团队中和别的同学发生过意见不合的情况吗?如何解决的?

   5. 项目中遇到什么问题怎么解决的?

   6.为什么选择美团?对美团有什么了解?

   7. 为什么选择做测试开发?对于测试开发的理解?想做什么方向?

   8. 有什么问我的?

    9. 你认为你应聘测试开发岗有什么优势?举两个例子?

   10.对自己未来3年的职业规划?

    11.什么原因会让你决定离开美团?

    12.通过聊天的方式,简单的了解了下项目经历以及掌握的技能及掌握程度,如编程语言(美团测试开发这边貌似更倾向要懂JAVA的),数据库;了解或使用过哪些测试工具;是否熟悉计算机网络等计算机类的专业知识;

     13.找到100亿个URL中重复的URL?

     14.场景题:假如测试说程序有bug,而开发偏偏说没有,该怎么处理?(一脸懵逼,当时我就反问,你们是不是经常遇到这种操蛋的问题)

     15. 安卓的基本架构,四大组件

     16.你的梦想是什么?

     17.讲讲中断?

答:中断是CPU处理外部突发事件的一个重要技术。它能使CPU在运行过程中对外部事件发出的中断请求及时地进行处理,处理完成后又立即返回断点,继续进行CPU原来的工作。引起中断的原因或者说发出中断请求的来源叫做中断源。 根据中断源的不同,可以把中断分为硬件中断和软件中断两大类,而硬件中断又可以分为外部中断和内部中断两类。

     18.智力题7个等重量的球还有一个稍重的球共8个怎么用天平2次找出最重的一个?

答:去6个均分成两组称一次,如果相等则再称剩下的两个。如果不相等取重的一组,取两个称。

猜你喜欢

转载自blog.csdn.net/qq_21428081/article/details/80157648