面向面试学习,全网最齐全的软件测试面试题(含答案)

news2025/1/11 12:46:58

做测试的,我整理的真的很用心了,能找的新鲜面经都找了。

一面

1. 自我介绍

2. 面向对象的三种特性 集成用到了哪些特性 多态的具体使用场景 设计模式中的多态体现(手撕)

封装:将属性私有化;封装的意义:保护或者防止代码(数据)被我们无意中破坏。

保护成员属性,不让类以外的程序直接访问和修改;隐藏方法细节

继承:主要实现重用代码,节省开发时间。

多态的定义:不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。

多态实现“

酒 a = 剑南春

酒 b = 五粮液

酒 c = 酒鬼酒

策略模式:策略模式定义了一系列算法,并将每一个算法封装起来,而且使它们还可以相互替换。

3. java基础 堆和栈 String和StringBuffer 区别 在堆中怎么分配 有几个对象

栈:主要存放了编译器可知的各种数据类型(boolean、byte、char、short、int、float、long、double)、对象引用。

堆:存对象

String不可变StringBuffer可变

创建 1 或 2 个对象。

如果池中已存在字符串常量“abc”,则只会在堆空间创建一个字符串常量“abc”。

如果池中没有字符串常量“abc”,那么它将首先在池中创建,然后在堆空间中创建,因此将创建总共 2 个字符串对象。

4. java集合 hashmap 手撕实现put 和get方法

计算该去的位置:重点就是取个模

put大概思路要知道

Get:先计算出来位置,然后就去对应的链表找

5. java gc回收三种算法

标记-清除

从根对象出发,进行标记,也就是将这些根对象能够引用到的那些对象都作上标记。然后清除。

引用计数

有人引用就+1,释放就-1,到0就销毁。

GC 复制算法

最原始的做法就是将内存一分为二,每次只使用其他一半,当要 GC 时就将使用的一半中的活动对象复制到另外一半,然后清理这一半中的所有对象,直接使用另外一半即可,重复这个操作。

6. 网络基础 tcp三次握手

第一次:发送请求

第二次:告诉对方受到了请求并同意

第三次:告诉对方收到了你的同意,可以开始了。

7. 数据库查询 更新 删除语句 inner join left join right join区别

总结:内连接:只取两边能匹配的。

左连接:左边存在,右边不存在的也取

右连接和左连接相反

8. 索引 使用场景

加速有序表的查找速度

9. 项目中的难点

10. 为什么选择测试开发

11. 面试官介绍部门以及工作

12. 3-5年职业规划

一面

1. 自我介绍 项目

2. 算法 字符串匹配 截取 手撕 写测试用例 测试用例的设计方法

3. Java 多线程实现方式 runnable thread 区别 线程的几种状态 状态切换

优点:编写简单,如果需要访问当前线程直接使用this即可获得当前线程.

缺点:因为线程类已经继承了Thread类,不能再继承其他的父类

优点:线程类只实现了Runable接口,还可以继承其他的类.

缺点:编程稍微复杂,需要访问当前线程,必须使用Thread.currentThread()方法

4. 数据库 delete drop truncate区别

DELETE是每次删除一行,并且将该行的删除操作记录在日志中保存以便进行回滚操作。

TRUNCATE TABLE删除所有的数据,不把删除操作记录记入日志,是不能恢复的。

DELETE操作不会减少表或索引所占用的空间。

当表被TRUNCATE 后,这个表和索引所占用的空间会恢复到初始大小,

drop语句将表所占用的空间全释放掉。

如果想删除部分数据用delete;

如果想删除表用drop;

如果想保留表而将所有数据删除用truncate;

5. 索引 使用场景 数据库查询优化(有几亿条记录的表优化,分库,分表,按什么标准做划分标准)

6. 唯一索引和主键索引的区别

主键索引一定是唯一索引,唯一索引不一定是主键索引,

唯一索引可以为空,主键索引不能为空

7. HTTP和HTTPs的区别 HTTPs原理 SSL 证书 对称密钥(会话密钥) 非对称密钥

http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议

http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。

http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。

8. HTTP请求头部字段有哪些

9. HTTP 状态码 301和302 区别

301和302状态码都表示重定向,就是说浏览器在拿到服务器返回的这个状态码后会自动跳转到一个新的URL地址。

301表示旧地址A的资源已经被永久地移除了(这个资源不可访问了),;

302表示旧地址A的资源还在(仍然可以访问)

10. Web请求的过程

11. ping ICMP协议 ping 的过程 放弃

12. TCP和UDP的应用场景 QQ聊天软件使用的协议是什么

Tcp可靠传输:比如传文件

Udp不可靠:比如qq聊天有时候感叹号

13. Linux命令 | 管道命令

14. 学习方法

二面

自我介绍

为啥要做测开

测试方法

测试流程

代码题反转字符串

你会

之前测试遇到过什么亮点

找到的bug开发不承认咋办

学一门语言需要多久

有啥问题要问

三面

问了项目,项目是做什么的,用户是谁,你在里面扮演了什么角色

对测试开发的理解

如果测出了一个bug,去给开发说,开发说不是bug,咋地整

http请求头内容

状态码405

405表示请求的方式不对,请求的方式有get、post、head、put……常用的为post和get

put和post区别

幂等性概念:幂等通俗来说是指不管进行多少次重复操作,都是实现相同的结果。

GET,PUT,DELETE都是幂等操作,而POST不是,以下进行分析:

首先GET请求很好理解,对资源做查询多次,此实现的结果都是一样的。

PUT请求的幂等性可以这样理解,将A修改为B,它第一次请求值变为了B,再进行多次此操作,最终的结果还是B,与一次执行的结果是一样的,所以PUT是幂等操作。

同理可以理解DELETE操作,第一次将资源删除后,后面多次进行此删除请求,最终结果是一样的,将资源删除掉了。

POST不是幂等操作,因为一次请求添加一份新资源,二次请求则添加了两份新资源,多次请求会产生不同的结果,因此POST不是幂等操作。

数据库分页,limit 3 5的意思

从第三条往后取10条

tomcat配置

手撕,给一个字符串“王先生手机180住在A座302号”,把不同类型的连续字符分别存储,比如a1=王先生手机,a2=180等等,遍历这个存储结构可以得到原字符串

按格分割成一段一段的,存到不同的属性里

一面

1、自我介绍2、手撕代码:给一个整型数组,将正数放在左边,负数放在右边;

和快排类似,复习一下

3、刚才写的代码时间复杂度、空间复杂度都是多少?

4、如何优化刚才写的代码

这就是最优了优化不了了,笨蛋是开两个新数组,负的放第一个数组,正的放第二个数组。最后再放回开始的数组里,这是浪费空间的

5、站在一个测试人员的角度,如何测试刚才所写的代码

6、三次握手

7、integer和int的区别

Integer是int的包装类,int则是java的一种基本数据类型

Integer变量必须实例化后才能使用,而int变量不需要

Integer实际是对象的引用,当new一个Integer时,实际上是生成一个指针指向此对象;而int则是直接存储数据值

Integer的默认值是null,int的默认值是0

8、static关键字

修饰的方法和属性属于类本身,所有对象共享

9、项目难点,以及怎么解决的

10、简历上写的项目怎么做的测试;

11、你认为测试开发是做什么的?

12、问实习相关的工作

13、你有什么想问我的?

一二三四面

1.自我介绍

2.讲项目,讲项目流程

3.项目数据和代码怎么分离的,怎么驱动的(说的不好,感觉没get到点)

3.http用了哪些方法,post,put的区别,put,get的区别

4.https区别,https为什么是安全的,知道哪些加密算法(不懂了,说知道SSL层原理,讲了一下)

5.fiddler怎么抓https包的

还有好多,忘记了反正问的很详细

二面:

1.自我介绍

2.项目讲了一下,很详细的聊了一下项目,项目人员组成,你有没有觉得哪一环节可以优化的

3.jenkins怎么集成的,怎么触发的

4.为什么选ROBOT Framework框架,优缺点是什么

5.接口自动化测试接口输入参数填错时候是什么情况,怎么处理的(这块答得不好不是很懂,瞎扯了一会)

6.写代码:目录A,遍历这个文件夹,找出所有.txt文件,异常情况考虑

7.写代码:abcd反转成dcba,能写多少种方法,写了三种,姐姐让再想想,想不出来了,说可以入栈出栈的方式

8.二分查找思想说一下,代码写一下,有没有异常情况的处理

9.写代码:统计字符串abcdaa123每个字符出现的次数

10.python常用哪些类库

11.python常用数据结构讲一下,特点讲一下

12.linux 查看所有java的进程什么语句, ps -ef | grep 'java',写了不对,改了两遍才写对了,问|是什么,说了管道

查看日志怎么查看的(不会)

查看两台服务器是否连通什么语句,说了ping,还知不知道其他的,不懂了

服务器A上的文件拷贝到B,什么语句(不懂,以前用过忘记了,哭)

同一个服务器上文件夹A的拷贝到B cp

13.数据库三种删除关键字说一下 delete,truncate,drop讲了一下,此时嗓子已哑~~

14.http请求包包含哪些内容,说的不好只记得一些

15.http1.0 http1.1啥区别,讲了一下,顺便讲了长连接和短连接的区别

16.一个URL包含哪些内容,说了协议,域名或者IP,文件名路径名

17.cookies session 区别说一下 你项目里怎么存cookies的,告诉他没用过,自己做过token验证的

18.对测试框架有没有优化的,跟他说发现过问题但是没有优化开源的框架,但是优化过自己的代码,说了下函数式编程

19.实习中发现什么有意义的bug没有

20.用fiddler干嘛的,说了过滤包,抓手机包

21.浏览器兼容性测试做过哪些,哪些浏览器,有什么特点,市面上浏览器列举了一下,特点就不懂了,说了一下发现过的浏览器兼容性测试的bug,问怎么解决的,说不太懂底层原理

22.微信登录页面怎么测试,从哪些方面测试,具体说下功能测试

23.美团一个提交订单的页面,怎么测试的

三面:

1.自我介绍,项目,项目人员组成

2.python用过哪些库

3.python中is 和==什么区别

4.函数重载是什么,代码写一下(说的好像不准确,代码没写出来,换了写初始化的)

5.python 初始化一个类代码写一下

6.python写一下99乘法表

7.写完了对代码设计测试用例(好难,讲的不好)

8.还有一个代码题忘记了

9.MYSQL题目,找出每个科目的平均分,平均分大于90的科目,这个地方写的很差,在面试官不断指导下改正,有段时间没用了,写的不行,哭

10.sql注入什么样子,举个例子,写了一种代码,问还知道其他的不,不知道了,跟他说了一下sql注入原因

11.平时怎么学习的 跟他说书和博客,看谁的博客,说了阮一峰,廖雪峰

12.最近看哪些书,大学学最好的课程是啥,说了计算机网络,这本书讲什么的,跟他说了第一章到第十章每章讲的什么

从这本书学到什么了,说了协议

13.http状态码说一下,从100说到4XX被停了,问 你咋还记得怎么清楚,是不是背书了....

委屈,记得清楚也不行了,告诉他项目常用, 我就多了解了很多(没错其实我就是背书了)

14.平时怎么学的PYTHON,说了python基础教程,博客,传智播客的视频,选择性学习

15.你觉得怎么可以减小开发中出现的错误(答得不好,纯胡扯)

16.美团常用吗,蠢了说不太常用,常用大众点评,哭戚戚

用大众点评干嘛的,答了各种吃喝玩乐啊~

17.职业规划说一下,说了五年的,说你想的倒是很长远啊,那你觉得做leader需要什么

18.扯了会校园生活

19.有什么要问的

HR面:

1.自我介绍

2.大学经验

3.概括自己的优缺点,讲了一下

4.天赋和努力什么重要,过程和结果什么重要

5.讲了下大学经验,各种社团活动

6.你怎么平衡活动和学习

7.你有对做过等活动review吗

8.了解了基本情况

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1220794.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue路由 replace属性 控制浏览记录不能前进或后退

默认是push模式 表示页面一直增加&#xff0c;用户可以操作返回上一个页面 replace 模式 <router-link replace :to"{path:/user,query:{ id:123,age:666 }} ">跳转用户</router-link><!--replace true表示浏览器不能后退浏览记录-->

换硬币C语言(超详细分析!包会)

换硬币C语言&#xff08;详解&#xff09; 题目介绍分析题目代码题目讲解 题目介绍 分析 通过枚举的方式找出所有可能的找零方案&#xff0c;并统计满足条件的方案的个数。使用三层嵌套的循环遍历所有可能的组合&#xff0c;判断总金额是否等于给定的金额 x&#xff0c;并输出…

【Spring】使用三方包进行数据源对象(数据库)管理

在这里使用alibaba的druid来连接数据库&#xff0c;然后再Spring Config下配置数据库 目录 第一步&#xff1a;在pom.xml中导入坐标第二步&#xff1a;在bean中配置连接注 第一步&#xff1a;在pom.xml中导入坐标 在dependencies下写&#xff1a; <dependency><grou…

高能分享:软件测试十大必问面试题(附带答案)

1 介绍之前负责的项目 参考答案&#xff1a;先大概描述一下这个项目是做什么的&#xff08;主要功能&#xff09;&#xff0c;包括哪些模块&#xff0c;是什么架构的&#xff08;B/S、C/S、移动端&#xff1f;&#xff09;&#xff0c;你在其中负责哪些模块的测试。期间经历了几…

腾讯云轻量服务器干什么用的?轻量级服务器和云服务器什么区别?

你是否曾经想要拥有一个属于自己的云端空间&#xff0c;用来存放你的个人网站、博客、游戏服务器&#xff0c;或者其他的数字资产&#xff1f;那么&#xff0c;腾讯云轻量服务器就是你的不二之选。它是一种高效、灵活、安全的云计算服务&#xff0c;让你在云端世界里无拘无束地…

Linux | 安装openGauss数据库

Linux 安装openGauss数据库 今天我们来安装一下国产数据库openGauss~~ 下载openGauss 首先在官网下载对应的安装包&#xff0c;我们这里下载LInux 极简版来演示安装 下载后,使用root用户上传到Linux ,这边上传到/usr/local/目录下, 使用root 用户创建安装目录 mkdir /usr/l…

香港优才计划申请入口评分表系统误区,准备好材料一步步申请!

香港优才计划申请入口评分表系统误区&#xff0c;准备好材料一步步申请&#xff01; 一、关于香港优才计划申请入口 香港优才计划申请的官方网站入口就是香港入境处的官方网站&#xff0c;网址&#xff1a;www.immd.gov.hk。也可以直接在搜索引擎上搜索关键词“香港入境处”找到…

2023年“华为杯”第二十届中国研究生数学建模成绩数据分析(末尾有吃席群)

目录 0引言1、数据大盘1.1 官方数据1.2 分赛题统计数据1.2.1 A-F 获奖数1.2.2 A-F 获奖率 2、分学校统计获奖情况&#xff08;数模之星没有统计&#xff09;3、 数模之星4、吃席群5、写在最后的话 0引言 2023年华为杯成绩于2023年9月22-26日顺利举行&#xff0c;来自国际和全国…

鸿蒙APP外包开发上线流程

鸿蒙系统的上线流程可能会根据具体的版本和平台要求而略有不同。在进行上线之前&#xff0c;开发人员应该详细了解并遵循鸿蒙生态系统的相关规定和要求。鸿蒙&#xff08;HarmonyOS&#xff09;应用的上线流程通常包括以下步骤&#xff0c;希望对大家有所帮助。北京木奇移动技术…

怎么为pdf加水印?

怎么为pdf加水印&#xff1f;最近很多小伙伴都有这样的疑问。你可以在浏览器上搜索一下&#xff0c;关于这方面的很多还是有很多人不是很清楚的。虽然我们自己在很多PDF文件上都看到了水印&#xff0c;那么真的到了自己这边需要进行操作的时候&#xff0c;确实还是有些这样或是…

什么是CRM管理系统

什么是CRM管理系统 市场竞争的日益激烈&#xff0c;企业对于客户关系的重视程度不断提升。为了更好地管理和维护客户关系&#xff0c;很多企业开始引入CRM&#xff08;Customer Relationship Management&#xff09;管理系统。那么&#xff0c;什么是CRM管理系统呢&#xff1f…

亚马逊美国站CPC认证ASTM F963测试项目要求有哪些?

ASTM F963是美国材料和试验联合会&#xff08;ASTM&#xff09;制定的儿童玩具安全性的标准规范&#xff0c;专门针对儿童玩具产品的安全性进行了规定和要求。 ASTM F963标准的内容和要求包括&#xff1a; 1、物理机械性能&#xff1a;规定了玩具的物理机械性能要求&#xff0…

工业镜头中的远心镜头的分类

双远心 物像两侧都是平行光路 物方远心 物体一侧是平行光路 像方远心 成像一侧是平行光路

Web前端—移动Web第一天(平面转换、渐变、综合案例--播客网页设计)

版本说明 当前版本号[20231117]。 版本修改说明20231117初版 目录 文章目录 版本说明目录移动 Web 第一天01-平面转换简介示例 平移定位居中案例-双开门旋转转换原点案例-时钟多重转换缩放案例-播放特效倾斜 02-渐变线性渐变案例-产品展示径向渐变 03-综合案例导航-频道箭头…

混合云运维解决方案,支持公有云、私有云、信创云等环境

数字时代&#xff0c;政企业务上云已成为大势所趋。虽然上云可为政企用户带来业务应用部署调度更加灵活、资源利用率更高的优点&#xff0c;但因云平台建设处于不同的阶段&#xff0c;且运转过程中包含大量的、不同类型的业务系统和应用场景&#xff0c;在整体云平台的建设中往…

虾皮插件能做数据分析的-知虾数据分析插件Shopee大数据分析平台

在如今的电商行业中&#xff0c;数据分析已经成为了一项至关重要的任务。通过对大量数据的收集和分析&#xff0c;企业可以更好地了解市场趋势、了解竞争对手、优化产品和店铺运营等。然而&#xff0c;要想做好数据分析&#xff0c;一个好用的工具是必不可少的。 虾皮插件——知…

Mac安装Homebrew

方式一&#xff1a;官网&#xff08;很慢&#xff0c;不推荐&#xff09; curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh方式二&#xff1a; 1、执行以下命令 /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/ma…

Python算法题2023 输出123456789到98765432中完全不包含2023的数有多少

题目&#xff1a; 无输入&#xff0c;只需输出结果&#x1f910; 这个数字比较大&#xff0c;小伙伴们运行的时候要给代码一点耐心嗷つ﹏⊂ &#xff0c;下面是思路&#xff0c;代码注释也很详细&#xff0c;大致看一下吧&#xff08;&#xff3e;∀&#xff3e;●&#xff09…

macOS下如何使用Flask进行开发

&#x1f468;&#x1f3fb;‍&#x1f4bb; 热爱摄影的程序员 &#x1f468;&#x1f3fb;‍&#x1f3a8; 喜欢编码的设计师 &#x1f9d5;&#x1f3fb; 擅长设计的剪辑师 &#x1f9d1;&#x1f3fb;‍&#x1f3eb; 一位高冷无情的编码爱好者 大家好&#xff0c;我是全栈工…

随机链表的复制

文章目录 &#x1f349;前言&#x1f349;题目&#x1f349;分析&#x1f349;思路一&#xff1a;暴力解法&#x1f349;思路二&#xff1a;很绝的办法 &#x1f349;前言 果然&#xff0c;力扣的简单题不一定简单&#xff0c;但是中等和较难的题一定很麻烦。 这道题相当综合&…