当前位置: 首页 > news >正文

最详细的软件测试面试题整理与分析

前言

时光荏苒,一转眼到了2023年末尾,2024年也快要来了,人员就业市场以往的寒冬也貌似有了转暖的迹象,身边大批的就业人员也开始了紧张的备战之中。

近几周也和多家合作公司的HR进行了沟通,发现虽然岗位就业情况较去年有所好转,但整体的需求缺口与候选人的条件选择却比19年的时候稀少与严格了许多。

许多的应聘者投出简历之后经常会遇到根本没有反馈的情况,一方面也是大批的大厂、中厂的竞争者出现,他们有着大厂背景和大项目背书,相对来说公司方面就有了更优解,另一方面经历了去年一整年的变故,许多的优势竞争者只能降低预期,这对用人单位来说性价比就更高了。

也正是因为以上的种种,博主作为一个测试管理者也常年面试各类的测试行业就业人员,也发现了形形色色的面试相关的问题,希望将自己的长久经验积累转化为博文的这种方式来帮助到更多的软件测试应聘者。

大家可以通过面试题内的一些解析再结合自己的真实工作经验来进行答题思路的提取、整理。

友情提示:硬背答案虽好,但容易翻车哦。

在这我准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或者直接关注VX公众号:互联网杂货铺这份测试文档资料也打包在里面啦,免费领取!

软件测试视频教程观看处:

2023最新【软件测试面试300问】面试八股文教程,涵盖自动化测试/接口测试/性能测试/测试开发等内容

题目解析

1、请先做下简单的自我介绍

每个应聘者面对的第一个问题,相信大家都不会陌生,这里只说几个重点:

1、自我介绍一定要事先准备,在有效的时间内(保持在1-2分钟左右)将自己之前的职位、大致职业经历、能力特长进行描述。

2、另外一个比较有意思的是,许多应聘者在面试刚开始的时候相对会比较紧张,但只要面试进行的比较顺利,后期的紧张感也就会渐渐消失,这就导致一开始的自我介绍往往会表现的窘迫、结结巴巴,那么给到面试官的第一印象就会打折扣。

2、请介绍一下你们的测试流程

对于以上这题,能给到比较标准的答案就是:需求分析 → 概设详设测试 → 单元测试 → 集成测试 → 系统测试 → 验收测试。

但博主不建议按部就班的把这个记下来用来回答,那最多就是一个框架,这里推荐结合自己公司的真实测试活动内容来进行描述。

千万不要觉得少了其中的某一步会怎么样,也千万不要为了使流程听起来比较丰满而刻意的去编造一些自己从来没参与过的测试环节,就比如概设详设测试这块,很多公司是不会有的,你在面试过程中背了这一个流程框架,将其加入其中,一旦面试官问起无疑就是给自己挖坑,这个是面试中的大忌。

我们在日常的工作中可以进行刻意练习,身为执行人员在测试活动的整个过程中可以将每个阶段自己、团队成员、上级在做的事情进行观察与大致的记录,如果能有输出物那就最好了。

一般面试官在听到你介绍完一整个测试流程大致后,都会针对某个环节来对你进行细致提问,比如你们的测试用例评审是怎么执行的,集成测试环节中你的主要职责是什么,测试活动前期你在团队中具体负责哪些工作等等等等。

无论问题如何五花八门,只要不脱离整个流程的大致范围,相信平时如果有良好的经验累积和刻意练习,这些类似的问题都可以应付自如。

3、请你介绍一下你们公司的XXX产品/项目

这题的出现率也是高的可怕,其实对于面试官来说,检验一个测试人员的业务是否合格的其中一个标准就是应聘者是否可以完整、全面、系统的介绍清楚自己的经手的产品或项目。

这里还是奉劝大家不要抱着侥幸的心理,觉得反正不是用人单位的项目,随便说说,就算说错应该也没什么大问题。一般来说面试你的无论是一面还是二面,都会是你的直属领导,只要不是太水,面试官的技术力与业务力都会在你之上,如果是同一行业的就更不要提了。

千万不要只是宽泛的将公司产品的相关介绍与功能描述出来,最好可以将软件架构+应用场景+解决痛点+负责模块与亮点功能进行系统的介绍。

对于自家产品与项目的了解,除了在日常的测试工作中进行累积之外,可以多与项目组内的其他角色多多进行沟通,软件架构与基础功能逻辑可以找开发、产品需求与业务可以找产品、软件的弊端与一些问题可以找售后。

通过多方位的了解与信息收集,将自身对于产品业务与功能的理解进行优化,可以最后的输出物简洁的表现在简历的项目经历内。

另外有条件的话可以与团队内的其他软件测试人员进行互相的练习或在某些内部分享会进行刻意练习。重要的在就如何通过多次练习来进行语言的组织与表达。

4、请讲讲工作中你遇到过哪些印象深刻的Bug

这一题博主也曾经向许多面试者询问过,但大家通常都会把注意力放在“印象深刻”这个点上,描述出来的内容也大多是某个Bug有多难解决,定位分析了好几天都没有进展,然后通过自己的不懈努力或灵光乍现,提供了线索让开发最终解决了问题。

那么该如何回答这个问题呢?其实以博主自身的感受来说,面试者所说的这个Bug是否极为复杂、困难重重,真的一点也不重要。

大家要知道共情这个东西是很难的,你想要告诉面试官的并不是你调查这个Bug有多辛苦,对不对?我们还是要搞清楚面试时,对方提问的本质大致是什么?他真正想要考察的是什么?

其实这个面试题的本质是想要考察你作为一个测试人员,在这个Bug的全生命周期中,做了哪些工作和具体的一些内容体现。

那为什么要是印象深刻的Bug呢?印象深记忆才会保持长久,也是借此希望面试者可以完整的说出这里面的来龙去脉。

那么拉回来继续说刚才的话题,对于测试人员来说日常的Bug定位能力相较于执行才更有价值,定位Bug其实是需要我们的测试人员拥有更加全面的技能广度。

同样是一份Bug单,一份是有准确调查线索与自我推断的,另一份则是只有现象描述与期望结果的,相信广大的开发同学也是更希望拿到的是第一份Bug单。

当然除了定位肯定是不够全面的,作为测试人员,一旦发现了Bug,那基本操作就是复现 → 分析 → 记录 → 跟踪,所以日常工作中Bug的全生命周期管理是每个测试人员都需要刻意练习的内容。

同样的,在开发同学进行Debug的时候,也可以适当的去旁观一下,看看他们是如何进行Bug定位的,平时多和开发同学进行交流,学习一些相关的定位技能。

当你能把这些简洁完整的描述出来,相信Bug是否复杂,是否惊艳也已经不是什么问题了。

5、如果给你一个XXX,你准备怎么测试

又是一个万年不变的面试题,虽然乍一听起来好像挺简单的,但在这题上翻车的面试者还真的不在少数。

其实这一题考察的是面试者对于被测对象的整体质量保障认知与业务快速上手能力。

无论这个XXX是任何物体,这里都有一个万能的公式去套,那就是从不同类型的测试活动去进行质量保障,这个也是遵循了软件测试的一贯理念。

举个例子,如果被测对象是一个电子秤,那么我们可以从功能性的角度去确认他的基础功能是否OK,从设计性的角度确认外观与规格是否符合需求说明,从性能的角度确认规定使用次数内是否功能是否OK,从安全性的角度确认基本的材质是否合格,切角设计是否安全,从易用性的角度确认液晶屏亮度与数字字体是否OK等等等等。

这里只提及了大致的回答思路,真正的面试过程中碰到了这题,我们需要在这思路的基础上对每个类型的测试项进行细分,可不能粗略的回答大概用什么测试类型去确认。

6、请说一下APP产品与WEB产品测试的区别

这题我们可以从以下几个方面去进行切入,首先从软件架构来说APP为C/S架构,WEB为B/S架构。

针对不同的架构形式,我们的测试方式与关注点也是不同,APP因为需要投放应用市场,迭代的速度与频率不会像WEB这样频繁,相反由于WEB的自身特性,无论是任何的代码改动都可以快速的通过前端代码发布进行迭代,也正因为这样,如果是在正式环境中进行回归,WEB产品的回归要求与时效性要远高于APP。

同时区别与其两者的软件架构,APP需要验证客户端侧的安装与升级、卸载等功能方面,而WEB则无需。

从兼容性方面来说,APP注重各类主流机型的适配,WEB注重各类浏览器的适配。性能方面的关注点也大不相同,APP需要对手机的功耗、网络流量、CPU、内存进行关注。

WEB则需要对页面响应速度、FCP、LCP、FID、 TTI等各类指标进行观察。至于弱网相关的测试其实更倾向于APP产品侧。

写在最后

PS:这里分享一套软件测试的自学教程合集。对于在测试行业发展的小伙伴们来说应该会很有帮助。除了基础入门的资源,博主也收集不少进阶自动化的资源,从理论到实战,知行合一才能真正的掌握。全套内容已经打包到网盘,内容总量接近500个G。如需要软件测试学习资料,关注公众号(互联网杂货铺),后台回复1,整理不易,给个关注点个赞吧,谢谢各位大佬!

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

相关文章:

最详细的软件测试面试题整理与分析

前言 时光荏苒,一转眼到了2023年末尾,2024年也快要来了,人员就业市场以往的寒冬也貌似有了转暖的迹象,身边大批的就业人员也开始了紧张的备战之中。 近几周也和多家合作公司的HR进行了沟通,发现虽然岗位就业情况较去年…...

【Vue】浏览器安装vue插件

首先看一下安装之后的效果&#xff0c;再考虑一下要不要安装 安装完之后&#xff0c;打开浏览器控制台&#xff08;ctrl shift j) <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</t…...

人人都会Blazor —— 3.3 参数

参数最常见的使用,目的是使组件可以接收动态数据。 声明参数 参数使用 [Parameter] 特性的公共 C# 属性进行定义。 在下面的示例中,内置引用类型 (System.String) 和用户定义的引用类型 (PanelBody) 作为组件参数进行传递。 PanelBody.cs: public class PanelBody {publ…...

【数据结构初阶】栈和队列

栈和队列 1.栈1.1栈的概念和结构1.2栈的实现 2.队列2.1队列的概念和结构2.2队列的实现 1.栈 1.1栈的概念和结构 栈&#xff1a;一种特殊的线性表&#xff0c;其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶&#xff0c;另一端称为栈底。…...

MATLAB - text的两种使用方法

text小技巧 1. 常规使用&#xff08;Method 1&#xff09;2. 在显示画面的相对位置&#xff08;Method 2&#xff09;3. 举个例子 1. 常规使用&#xff08;Method 1&#xff09; text(x,y,txt)2. 在显示画面的相对位置&#xff08;Method 2&#xff09; text(string,‘ABC’,…...

ubuntu下配置qtcreator交叉编译环境

文章目录 安装交叉编译工具安装qt creator开发环境配置交叉编译示例demo参考 安装交叉编译工具 安装qt creator开发环境 1 官网 2 填写信息 3 下载 默认没有出现Qt5.15版本 WISONIC\80081001ub16-1001:~$ /opt/Qt/Tools/QtCreator/bin/qtcreator /opt/Qt/Tools/QtCreat…...

金风玉露一相逢|实在智能联手浪潮信息合力致新生成式AI产业生态

近日&#xff0c;实在智能正式加入浪潮信息元脑生态AIStore。 实在智能是一家基于AGI大模型超自动化技术&#xff0c;领跑人机协同时代的人工智能科技公司&#xff0c;以其自研垂直的“TARS&#xff08;塔斯&#xff09;大语言模型”技术、实在RPA Agent智能体数字员工产品和超…...

Design Guidelines for 100 Gbps

文章目录 Stratix V GT Transceiver ChannelsCFP2 Host Connector Assembly and PinoutStratix V GT to CFP2 Interface Layout DesignBoard Stack Up DimensionsExample Design Channel PerformanceSimulation Results for Stratix V GT to CFP2 Connector Layout Design Desi…...

苹果企业账号申请思考

苹果企业账号 好多年的企业账号想启用&#xff0c;但是没有找到入口&#xff0c;直接联系了一下苹果的技术支持。通过邮件联系&#xff0c;之后他们回电&#xff0c;吧啦吧啦问了一大堆关于企业账号的事情&#xff0c;他们对这个还挺关注的&#xff0c;主要是集中在是否是有必…...

【C/C++】素数专题

素数专题 1.判断素数模板2.求范围内的素数&#xff08;101-200&#xff09;3.判断素数与分解 1.判断素数模板 #include<stdio.h> #include<math.h>int prism(int n){if(n1) return 0;for(int i2;i<sqrt(n);i){if(n%i0) return 0;}return 1; }int main() {int n…...

Apple Vision Pro 开发机申请

申请地址: &#xff08;免费租用形式&#xff09; Developer Kit - visionOS - Apple Developer 上海Apple Lab 互动申请&#xff1a; View - Meet with Apple Experts - Apple Developer (需要完善的产品才能去测试哦) 它是如何工作的 我们将借给你一个Apple Vision Pro开发…...

NFS服务器搭建 配置nfs共享目录

一定要用二级目录&#xff0c;否则NFS坏了主机都启动不起来 一级目录是强制挂载&#xff0c;二级目录是动态挂载 nfs共享远程目录具体步骤&#xff1a; 服务器端配置&#xff1a; 1.安装NFS服务器软件 sudo apt-get install nfs-kernel-server # 安装 NFS服务器端 2.添加…...

springboot+bootstrap+java农业电商服务商城系统_30249

本农业电商服务系统是为了提高用户查阅信息的效率和管理人员管理信息的工作效率&#xff0c;可以快速存储大量数据&#xff0c;还有信息检索功能&#xff0c;这大大的满足了管理员、会员和商家这三者的需求。操作简单易懂&#xff0c;合理分析各个模块的功能&#xff0c;尽可能…...

【shell】脚本实现将开发机user1账户下的abc文件夹复制到user2~4账户下

1 主要内容 可以使用Shell脚本来实现将开发机&#xff08;Linux&#xff09;上user1账户下的abc文件夹复制到user2、user3和user4账户下。 #!/bin/bash# 数组赋值&#xff0c;目标用户列表 # target_users(user2 user3 user4) # 定义数组 target_users()# 生成user数字的数组…...

steamui.dll找不到指定模块,要怎么修复steamui.dll文件

当我们使用Steam进行游戏时&#xff0c;有时可能会面对一些令人无奈的技术问题。一种常见的问题是“找不到指定模块steamui.dll”&#xff0c;这可能是由于缺少文件、文件损坏或软件冲突等原因导致。但别担心&#xff0c;这篇文章将提供几种解决此问题的方法&#xff0c;并针对…...

鸿蒙原生应用/元服务开发-AGC分发如何上架HarmonyOS应用

一、上架整体流程 二、上架HarmonyOS应用 获取到HarmonyOS应用软件包后&#xff0c;开发者可将应用提交至AGC申请上架。上架成功后&#xff0c;用户即可在华为应用市场搜索获取开发者的HarmonyOS应用。 配置应用信息 1.登录AppGallery Connect&#xff0c;选择“我的应用”。…...

基于单片机仓库温湿度监测报警系统仿真设计

**单片机设计介绍&#xff0c;基于单片机仓库温湿度监测报警系统仿真设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的仓库温湿度监测报警系统可以被设计成能够实时监测仓库内的温度和湿度&#xff0c;并根据预设…...

中文rlhf数据集50w条数据解析

中文rlhf数据集50w条数据解析 解析代码数据名代码解析 解析代码 import jieba from tqdm import tqdm import re import pandas as pd import numpy as npdef find_non_english_text(text):pattern re.compile(r[^a-zA-Z])return pattern.sub(, text)def find_chinese_text(t…...

解决解析PDF编码报错(以pdfminer为例):UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte xxx

解决方法 博主使用的是pdfminer解析PDF文档&#xff0c;这个解决方法是通用的&#xff0c;只需要使PDFParser传入的文件为二进制文件即可&#xff0c;示例程序&#xff1a; from pdfminer.pdfparser import PDFParserpdf_parser PDFParser(open("pdf文件.pdf", &q…...

chatGPT2:如何构建一个可以回答有关您网站问题的 AI 嵌入(embeddings)

感觉这个目前没有什么用&#xff0c;因为客户可以直接问通用chatGPT&#xff0c;实时了解你网站内的信息&#xff0c;除非你的网站chatGPT无法访问。 不过自动预订、买票等用嵌入还是挺有用的。 什么是嵌入&#xff1f; OpenAI的嵌入&#xff08;embeddings&#xff09;是一种…...

基于FPGA的PID算法学习———实现PID比例控制算法

基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容&#xff1a;参考网站&#xff1a; PID算法控制 PID即&#xff1a;Proportional&#xff08;比例&#xff09;、Integral&#xff08;积分&…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

Golang——7、包与接口详解

包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...

嵌入式常见 CPU 架构

架构类型架构厂商芯片厂商典型芯片特点与应用场景PICRISC (8/16 位)MicrochipMicrochipPIC16F877A、PIC18F4550简化指令集&#xff0c;单周期执行&#xff1b;低功耗、CIP 独立外设&#xff1b;用于家电、小电机控制、安防面板等嵌入式场景8051CISC (8 位)Intel&#xff08;原始…...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL

ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...

书籍“之“字形打印矩阵(8)0609

题目 给定一个矩阵matrix&#xff0c;按照"之"字形的方式打印这个矩阵&#xff0c;例如&#xff1a; 1 2 3 4 5 6 7 8 9 10 11 12 ”之“字形打印的结果为&#xff1a;1&#xff0c;…...

32位寻址与64位寻址

32位寻址与64位寻址 32位寻址是什么&#xff1f; 32位寻址是指计算机的CPU、内存或总线系统使用32位二进制数来标识和访问内存中的存储单元&#xff08;地址&#xff09;&#xff0c;其核心含义与能力如下&#xff1a; 1. 核心定义 地址位宽&#xff1a;CPU或内存控制器用32位…...

算法250609 高精度

加法 #include<stdio.h> #include<iostream> #include<string.h> #include<math.h> #include<algorithm> using namespace std; char input1[205]; char input2[205]; int main(){while(scanf("%s%s",input1,input2)!EOF){int a[205]…...

工厂方法模式和抽象工厂方法模式的battle

1.案例直接上手 在这个案例里面&#xff0c;我们会实现这个普通的工厂方法&#xff0c;并且对比这个普通工厂方法和我们直接创建对象的差别在哪里&#xff0c;为什么需要一个工厂&#xff1a; 下面的这个是我们的这个案例里面涉及到的接口和对应的实现类&#xff1a; 两个发…...

java 局域网 rtsp 取流 WebSocket 推送到前端显示 低延迟

众所周知 摄像头取流推流显示前端延迟大 传统方法是服务器取摄像头的rtsp流 然后客户端连服务器 中转多了&#xff0c;延迟一定不小。 假设相机没有专网 公网 1相机自带推流 直接推送到云服务器 然后客户端拉去 2相机只有rtsp &#xff0c;边缘服务器拉流推送到云服务器 …...