2023软件测试高频面试题

前言

今天,我们来整理与解析一些比较高频的测试行业面试题,大家可以通过面试题内的一些解析,再结合自己的真实工作经验来进行答题思路的提取、整理。

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

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

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

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

题目解析

1、请介绍下你比较熟悉的Linux命令

这个可以说是非常基础的一题了,但就我的了解,有不少的测试就业人员不熟悉甚至没接触过Linux命令。

大家也不用惊讶,介于很多小厂或私人公司的规模与前期流程习惯,测试环境搭建与维护会被运维一并管理,也有些甚至没有独立的测试环境,更多的是被DEV或UAT环境所替代,这也就导致了测试人员在整体的测试活动中无需关心测试环境的相关事宜,对于Linux命令没有接触也貌似就变得顺理成章了。

但对于测试人员来说不能熟练的使用Linux命令一定是比较致命的,所以在我们的日常工作中无论是独立搭建测试环境,还是对服务侧进行各类测试、日志查询、后端问题定位都会要求我们掌握一定的Linux命令。

那么对于Linux命令我们的测试人员需要掌握到什么程度呢?在这里我给大家一个建议,最好的方法根据你的公司业务来进行度量。

如果你自身对Linux有兴趣那当然是最好,如果只是工作需要,那对于这块还是从实际的工作内容入手,比如公司的产品后端使用的是什么版本的Linux、不同的平台命令会有细微的不同,独立搭建整套的测试环境,这个也是必须掌握的。

安装OS时最好是选择命令行界面的,跳过GUI,强制自己使用命令完成所有的操作。

如果英文底子不行的话,建议适当提高一下英文的读写能力,对后期的Linux操作绝对是有益处的。将日常的命令学习累积与输出,学习一些shell知识,将一些固定操作变为脚本执行。

只需要养成日常的有意积累,要回答这类问题不难,毕竟命令这块不是什么创造性问题,描述的时候只需要注意不要讲命令相关的参数过于扩展即可,另外如果可以配合实际的工作中场景来描述命令的用法那就更好了。

2、工作中使用过什么测试管理软件

这里的测试管理软件指的就是我们测试人员在整个测试活动环节中对于需求、计划、用例、缺陷进行管理的软件工具,测试人员可以通过这些软件来对整个测试活动的各个环节进行结果的监控与管理,简单来说就是用来提升测试效率的有效工具。

对于这样的开放性问题,无论我们使用过哪些软件或工具,哪怕是自研的,我们都可以有条理的对管理软件的功能与场景进行总分总的结构来进行介绍,但需要注意的是这些毕竟不是我们做过的产品与项目,描述不要太过详细。

总分总的结构大致可以分为:

1.将所有环节会用到什么软件进行概要介绍;

2.抽出自己比较熟悉的某一环节来进行重点铺开,结合真实工作场景来描述日常的测试管理工作内容;

3.最后收一下尾,描述使用管理软件可以如何提升该环节内的工作效率。

另一方面,在日常工作中我们对于测试管理软件的使用方法与其内的一些要素或快捷操作可以进行一定的熟悉,相信在回答这题的过程中会起到一些意想不到的效果。

3、请介绍一下TCP与UDP两者的区别

很经典的一题,标准答案这里就不详说了,各大搜索引擎都有。

这里想说的是另一个比较常见的现象,就是有部分的测试人员其实对网络基础知识的掌握比较弱,一般来说把上面一个问题的答案记一下就能轻易的答出。

但一旦面试官稍微深入询问一点点就马上会暴露出问题,大家试想一下,能清楚区分出两大协议区别的人却搞不清楚在7层模型的哪一层,你们是否相信面试者在日常的工作中有真实的接触经验。

还是那一句话,虽然我们在日常的工作中对于网络传输协议的认知是比较抽象的,但这并不妨碍我们有效并的学习相关的知识。

另外,不单单局限于TCP与UDP,其实对于OSI 7层模型的一些基础知识我们多多少少都需要掌握一点,身处软件行业除了软件工程的相关知识之外,网络就是一个绝对的大头了。

独立完成测试任务对于每个测试人员来说都是基础中的基础,谁也不想因为产品缺陷问题涉及到网络就直接躺平吧,更不用说现在的产品基本设计多端,App、Web都是常见的产品形态,没有相关的知识简直就是寸步难行。

说了那么多,其实这题还是可以使用那个万金油套路,基础知识+场景结合。

了解了题目相关的基础知识之后,将两者的特性进行学习与理解,在日常工作中结合测试场景来熟悉。答出了基础面知识,我们就可以得到一半的分数,另外一半可以描述我们做过的项目或产品为何要使用此类协议,突出协议特性与产品的应用场景是良好结合的。

如何选择这个和技术架构与选型有关,我们可以适当弱化或一语带过,突出业务面才是我们需要表现的主要目标。

4、请描述一下你所理解的软件测试

这个题目的答案又是一个众说纷纭的局面,无论答案的来源是什么,我这里推荐的就是在提前准备、累积、沉淀、总结。理解这个字眼本来就是很感性的,固然别人的理解很到位,很形象,但那毕竟是别人的,拿来借鉴本身没有什么错。

我们进入软件测试行业的动机与目的虽然各不相同,无论你是向往还是被迫,都改变不了你当前身为测试从业人员的事实,所以我们在自己的职业道路上抽出一些时间来思考这个问题,也就变得顺理成章了。

如果有条件也可以和身边的团队成员或圈子内的其他测试人员讨论下这个问题也不失为一个良策。

5、如何对一个页面做测试

和之前的物体测试类似,可以从功能、界面、性能、易用、兼容、安全等方面来进行切入。但以上这些类似的回答过于宽泛,也很难提起面试官的兴趣,所以在对方提出这样的问题之后,我们可以反过来问对方一个问题:该页面是类似什么功能或业务的页面?

这样做的好处有2:

第一,我们可以准确的对问题进行定位,更有针对性的给出回答,而且面试官大概率会给出他们公司产品的相关某个页面,这个也是为什么在面试前推荐从搜索引擎里好好的熟悉下用人单位的业务信息与产品介绍等信息。

第二,给面试官留下印象,回答问题其实和接收工作任务一样,在执行工作之前有针对的确认目标是非常有必要的,这样的下属也是身为管理层比较愿意看到的。

那么我们在回答这题的时候就可以将以上的几个测试维度进行有效的展开,颗粒度细致到某一个功能也不会显得唐突。

6、当你提出的缺陷开发不承认怎么办

不得不说,绝大部分的测试人员都有碰到过这样的问题,其中牵扯的不单单是做事层面的问题,当中也会掺杂人的因素在内。

这题考察的就是应聘者身为测试最基本的事务协调与沟通能力,虽然答案根据各自经历的不同而有所变化,但大的基调是不变的,客观描述、理性沟通、意见交换、有效推进、达成一致。

这里要注意,所说的内容一定要真实,如果真的没有碰到诸如此类的情况,宁愿说没有也千万不要瞎编,容易翻车。

对于此类问题的回答,我们可以有条理地将工作中碰到的几类场景进行逐条描述,先讲真实碰到的情况,此时如果面试官追加了情景,这里可以按照自己的想法进行补充,但如果是没有把握的部分,绝对不能乱讲。

作为测试,谨慎的做事行为最好能养成,测试人员的一个重要的作用是承上启下,其工作内容连接着诸多部门。能否用客观的数据与证据来证明自己所测出的缺陷属实,并且正确的传达至开发人员,这对每个测试人员来说都是度量其专业技能是否合格的标准之一。

7、请描述一下冒烟测试的目的

这题相对来说比较的简单,基本做过冒烟测试的人员都知道其中的目的。

冒烟测试一般是放在集成测试之前,也就是开发做完单元测试之后,提交测试版本给到测试团队的时候。

测试拿到提测版本后,一般都会先进行冒烟测试,验证提测版本的基础与被测功能是否存在重大缺陷,简而言之也就是判断当前提测版本是否进入集成测试与投入既定测试人力与资源的必要。

冒烟测试的执行内容通常也会由测试团队将日常的测试用例中P0与P1级别的用例抽出组成专门的冒烟测试用例,来进行快速执行。当然如果能使用自动化或CI来替代手工执行就更好了。

一些后话

在我接触过的很多测试人员中,的确有一些人员的沟通能力较为薄弱,无论是线上的信息沟通还是线下面对面的语言表达,时常会出现词不达意、逻辑不通、繁复啰嗦的情况出现。

在这里,我还是推荐广大的测试从业者重视起沟通表达这一块,虽然现在很多人认为工作只是打工,不用在意任何人的看法,来公司也不是交朋友的,但有一说一,这个论点和我的看法是不矛盾的。

提升表达沟通本身就是提升自己的核心竞争力,会说和不会说完全就是两种不同的局面,面对领导、面对同事、面对下属,你所表达的意思是否正确的传达给了对方,这个是很重要的。

很多测试人员终日忙碌于测试执行工作中,忽视了沟通表达的重要性,认为测试执行的好,软件功能稳定就是工作结果成功的表现,殊不知真正到了需要沟通表达,需要展现自己价值的时候却只能仓促的用只言片语来进行组织和表达,故而丢失了大量的晋升、跳槽的机会。

而在其中面试亦是如此,也是真正需要你在极短的时间内展示自己的价值的形式之一,此时的你如果拥有大量有价值的技能,但却无法正确的传达给面试官,最终换来的也无非只是面试落选的结果,毕竟千里马很多,伯乐却少得可怜。

所以在我们长期积累总结自己的硬技能的同时,软技能的提升也是必不可少,开口这件事本身不难,难就难在我们的内心把这件事看做是一个难关,正所谓事在人为,休言万般皆是命。

写在最后

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

☑ 240集-零基础到精通全套视频课程
☑ [课件+源码]-完整配套的教程
☑ 18套-测试实战项目源码
☑ 37套-测试工具软件包
☑ 268道-真实面试题
☑ 200个模板-面试简历模板、测试方案模板、软件测试报告模板、测试分析模版、测试计划模板、性能测试报告、性能测试报告、性能测试脚本用例模板(信息完整)

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

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux中nginx配置https

一、版本适配 版本一定要适配,否则会报错各种参数定位不到不识别的错误,以下是版本适配信息,各位观客自行按照以下信息匹配版本。 Nginx 1.11.5及以上版本与OpenSSL 1.0.2及以上版本兼容。Nginx 1.15.2及以上版本与OpenSSL 1.1.1及以上版本兼…

IDEA部署SSM项目mysql数据库MAVEN项目部署教程

如果 SSM 项目是基于 Maven 构建的,则需要配置 maven 环境,否则跳过这一步 步骤一:配置 Maven 第一步:用 IDEA 打开项目,准备配置 maven 环境 ,当然如果本地没有提前配置好 maven,就用 IDEA 默…

FindDiff_Qt找不同项目

文章目录 项目简介源代码widget.hwidget.cppwidget.ui配置文件找不同.json 项目简介 开发平台 win10Qt6.6msvc2022 简介 微信上有一些好玩的游戏, 找不同一种比较轻松有趣的游戏,也曾经在街机上被坑过N币, 玩了几次后,发现还是太难了,于是开始截屏放大,慢慢找,再然后就发展到截…

云原生安全:如何保护云上应用不受攻击

文章目录 云原生安全的概念1. 多层次的安全性2. 自动化安全3. 容器安全4. 持续监控5. 合规性 云原生安全的关键挑战1. 无边界的环境2. 动态性3. 多云环境4. 容器化应用程序5. API和微服务 如何保护云上应用不受攻击1. 身份验证和访问控制示例代码: 2. 数据加密示例代…

基于SSM的航班订票管理系统的设计与实现

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

SDRAM学习笔记(MT48LC16M16A2,w9812g6kh)

一、基本知识 SDRAM : 即同步动态随机存储器(Synchronous Dynamic Random Access Memory), 同步是指其时钟频率与对应控制器(CPU/FPGA)的系统时钟频率相同,并且内部命令 的发送与数据传输都是以该时钟为基准&#xff…

【Javascript】编写⼀个函数,排列任意元素个数的数字数组,按从⼩到⼤顺序输出

目录 sort方法 两个for循环 写法一: 写法二: sort方法 var list[3,6,2,8,1,7];list.sort();console.log(list);使用sort方法有局限,适合元素为个位数 var list[3,6,80,100,78,4];list.sort();console.log(list);如果元素 解决方法&#xf…

PY32F002A系列单片机:高性价比、低功耗,满足多样化应用需求

PY32F002A系列微控制器是一款高性能、低功耗的MCU,它采用32位ARM Cortex-M0内核,最高工作频率达到24MHz,提供了强大的计算能力。此外,PY32F002A拥有最大20Kbytes的flash存储器和3Kbytes的SRAM,为简单的数据处理提供了充…

asp.net教务管理信息系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio计算机毕业设计

一、源码特点 asp.net 教务管理信息系统是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语言 开发 asp.net教务管理系统 应用技术&a…

①【数据库操作】 MySQL数据库的查询、创建、删除、使用。

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ 目录 数据库相关概念数据库的查询、创建、删除…

数据结构绪论,基本概念

目录 1.什么是数据结构? 2.三种数据结构: 3.第一章绪论 了解概念 1.几个概念 2.数据存储方式: 3.算法的五个重要特性: 4.算法设计的要求: 1.什么是数据结构? 数据 数据,是对客观事物的符号表示,在计…

将自己本地项目上传到git,IDEA图文操作

文章目录 一、初始化git仓库二、gitee创建仓库三、输入自己仓库的地址四、在添加所修改的文件可能的错误 五、合并需上传文件六、上传参考文档 一、初始化git仓库 在自己的项目中,命令行中输入 git init二、gitee创建仓库 新建仓库 设置仓库参数,设置…

iOS Autolayout 约束设置【顺序】的重要性!

0x00 顺序不同,结果不同 看图说话 1 代码是这样滴~ 设置好约束,让 4 个按钮,宽度均分~ 结果如上图 [_pastButton.topAnchor constraintEqualToAnchor:_textView.bottomAnchor constant:6].active YES;[_pastButton.leftAnchor constraintEq…

Postman如何导出接口的几种方法?

本文主要介绍了Postman如何导出接口的几种方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 前言: 我的文章还是一贯的作风,简确用风格(简单确实有用)&a…

从REST到GraphQL:升级你的Apollo体验

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 「推荐专栏」: ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

ubuntu安装nps客户端

Ubuntu安装nps客户端 1.什么是nps内网穿透?2.设备情况3.下载客户端3.链接服务端3.1、无配置文件模式3.2、注册到系统服务(启动启动、监控进程) 1.什么是nps内网穿透? nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发…

注意力机制、Transformer模型、生成式模型、目标检测算法、图神经网络、强化学习、深度学习模型可解释性与可视化方法等详解

采用“理论讲解案例实战动手实操讨论互动”相结合的方式,抽丝剥茧、深入浅出讲解注意力机制、Transformer模型(BERT、GPT-1/2/3/3.5/4、DETR、ViT、Swin Transformer等)、生成式模型(变分自编码器VAE、生成式对抗网络GAN、扩散模型…

华为机试题:HJ3 明明的随机数

目录 第一章、算法题1.1)题目描述1.2)解题思路与答案1.3)牛客链接 友情提醒: 先看文章目录,大致了解文章知识点结构,点击文章目录可直接跳转到文章指定位置。 第一章、算法题 1.1)题目描述 题目描述&…

MySQL篇---第一篇

系列文章目录 文章目录 系列文章目录一、数据库的三范式是什么二、MySQL数据库引擎有哪些三、说说InnoDB与MyISAM的区别一、数据库的三范式是什么 第一范式:列不可再分 第二范式:行可以唯一区分,主键约束 第三范式:表的非主属性不能依赖与 其他表的非主属性 外键约束 且三…

单片机中的 _nop_() 延时以及其相关的基础扩展

使用 _nop_() 函数做延时遇到的一些问题 以及对此延伸出的一些需要了解的基本概念 ...... by 矜辰所致 完善文章内容结构,补充指令周期、机器周期等一些基本概念 2023/10/25前言 最近还是继续做着项目,因为在某 8051 内核芯片上使用到了 I…