面试offer收割机,爆肝整理高频软件测试面试题(带答案)

news2024/10/6 3:39:05

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

软件测试面试题:https://www.bilibili.com/video/BV1Lq4y137aR/

面试题1:介绍之前负责的项目?

参考答案:
先大概描述一下这个项目是做什么的(主要功能),包括哪些模块,是什么架构的(B/S、C/S、移动端?),你在其中负责哪些模块的测试。期间经历了几个大版本及几个小版本的迭代。

全程参与需求评审、测试用例编写、搭建测试环境、测试、BUG跟踪、上线等环节。在测试过程涉及到常规的功能测试、使用Postman进行接口测试、简单的性能测试等等。

测试过程中也会使用SQL Server(类似的数据库)进行增删改查、使用抓包工具进行抓包、根据后台日志进行数据分析、辅助测试等。

分析:
理论上测试人员是最了解产品的,产品经理可能只知道产品的功能、业务,而测试人员除此之外,还熟悉产品内部的实现逻辑。这道题考察你对项目的熟悉程度,以及根据你负责的内容判断你的能力。

写项目经验,要拣有含金量、能体现你能力的写。就算你没有实际的经验,现在网上开源项目那么多,去找个网站、APP从头到尾深入测一遍,撸清楚流程,面试的时候能说得头头是道也可以的。

简历是敲门砖,如果你的简历没有任何突出的地方,大概率连面试的机会都没有的。在成百上千份相似的简历面前,人家为什么偏偏抽中你呢?你的简历要有特点、有亮点。

面试题2:如何保证被测产品质量/用例覆盖度?

参考答案:
1.在需求评审阶段,熟悉并分析需求,对每条需求进行拆解,并对有疑问的地方及时和产品经理/BA沟通;

2.在设计测试用例阶段,我一般根据需求文档用XMind对测试点进行整理,然后再对每个测试点进行测试用例的设计;另外,我们产品经理会在研发管理系统里建立他的需求,我设计测试用例时会将用例关联到需求上面,确保每个需求都有用例覆盖到;

3.在用例评审阶段,我们一般先组内进行详细的评审;然后召集产品经理、开发一起评审,主要是评审一些业务流程和跨系统的接口,确保大方向没有问题,之后根据评审结果及时修正测试用例;

4.在测试阶段,我们会有交叉测试,因为每个人考虑问题的角度不一样。另外在测试过程中,如果发现用例有考虑不周全的地方,会及时完善进去;

5.在BUG修复我们进行验证时,会将这个BUG相关联的部分也测试一下,防止一些代码改动影响到之前的功能;

6.在上线前,会进行一个深度回归,回归的用例会和开发、产品一起评估决定。

说明与分析:
以上仅供参考,面试的时候随机应变,不要照抄照搬,结合你们公司的情况、说得越全越好。

现在流行测试左移、右移。测试左移,是往测试前的开发阶段移,越早发现不合理的地方,出现问题的几率就越低。

测试右移,是往测试后的发布阶段移,第一时间发现线上的问题并解决。可以在第2点之前和第6点之后,针对测试左移和右移说说测试人员能做哪些事情、对确保产品质量有什么影响,我想这是一个跳出常规的加分项。

至于如何保证测试用例的覆盖率,可以回答1-4点,在描述第2点时,也可以说说你在设计测试用例时着重要考虑的点。

比如,一些软件的业务流程比较复杂,设计测试用例不能只局限于表面的功能,要去深挖,多思考可能出现的场景;再比如一些边界值的测试、异常流程的测试等一些容易忽略的方面。

面试题3:如何判断BUG是前端还是后端?

面试官问到这个问题可能会举个例子,比如一个登录界面,输入用户名密码后点击【登录】发现无响应怎么回事?

参考答案:
首先要明白场景的数据流调用逻辑,这个场景就是前端触发一个操作,然后后端给出响应,最后前端将返回的登录后信息渲染并在界面展示出来。

首先我会用抓包工具 (Fiddler/Charles/浏览器的F12等),看点击登录的时候有没有触发请求,如果没有请求或请求有问题,那就是前端的BUG。

如果前端请求没问题,就看后端返回报文,根据接口文档,返回的数据有误,要具体分析报错的内容。如果是前端传参不对导致的,那就是前端问题,如果传参正确,后端处理不正确,那可能就是后端问题。

如果后端响应了且数据和接口文档一致,那就是前端展示的问题。

说明:
类似的问题还有,一个支付功能,支付成功后在我的订单里却没有显示。或者一个查询功能,输入条件查询后没有数据展示出来(先排除是否是因为数据库没有数据导致的)。一般都可以套用上面的回答,都是一个套路。

面试题4:给你一个优惠券你怎么进行测试?

分析:
现在面试类似这种问题真的挺烂大街的,基于一个不明确的需求,我觉得回答得好与不好根本说明不了什么。偏偏这种面试题的频率还贼高,什么电梯、杯子、优惠券、朋友圈点赞、登录功能是怎么测试的,这么多案例,都要去背一遍吗?

首先不要从这个功能有哪些可能的场景入手,因为功能需求本来就是不明确的。这里给出一个大概的回答思路。

参考答案:以登录界面为例

我会从下面几个方面去进行用例的设计:
功能测试:我会根据需求文档,将界面划分成几个小模块,比如注册、登录、忘记密码等,然后对每个小模块进行用例的设计。

注册可能要考虑手机号、邮箱等不同注册方式;登录要考虑正常登录、异常登录,会使用边界值、等价类划分法来设计用例;忘记密码要考虑不同的密码找回方式。(功能这一块可以再展开详细地说)

如果涉及到接口的,我会使用工具Postman来进行接口测试。

UI:检查界面是否有错别字,界面配色和布局、相关控件设计是否和UI设计一致。
兼容性:如果是web端登录,考虑浏览器、分辨率的兼容性;如果是移动端,考虑不同手机设备、不同屏幕大小、不同系统版本的兼容性。
性能方面:考虑用户从点击登录到登录成功的响应时长;多用户并发同时操作时功能是否正常。
安全性:考虑敏感数据如密码的传输和存储是否加密、是否明文存储在本地。
稳定性:看是否有闪退、崩溃、无响应等情况。
网络测试方面:网络状况不好时能否登录成功,异常提示是否正确等。
专项:如果是移动端的登录,还要考虑电话、短信、锁屏、横屏、重启等的影响。

面试题5:你之前是如何进行接口测试的?

参考答案:
首先获取接口规范、接口文档、需求文档,设计接口测试功能用例,用例设计要考虑单接口和多接口业务流程。

单接口主要进行接口的正确性和健壮性验证,要考虑各种入参验证(正常情况、异常情况,包括输入参数个数不对,类型不对,可选/必选,还要考虑参数互斥或关联的情况)、接口返回值各种验证(符合接口文档需求)。

多接口业务流程测试主要关注业务流和数据流,也就是多个接口的串联操作能否满足需求文档里的需求。

我们公司使用postman进行接口测试,根据接口文档,先选择请求方式,然后输入url,发送请求,看接口返回的数据。

面试题6:遇到困难,你是怎么解决它们的?

参考答案:
比较困难的事情在工作中还是很常见的,我上一份工作中就遇到过这样的情况:

开发提测的版本经常出现影响流程的BUG,导致测试无法进展下去,影响测试进度。

因为是小公司,没有一个规范的产品研发、测试标准,但是这样下去工作效率只会越来越低。

因此我,作为团队的核心成员,主导拟定了一套产品提测标准。要求开发自测用例覆盖度(也就是冒烟测试范围)、执行通过度要达到一定的标准,否则测试可以无条件驳回。

经过一段时期的试运行,后面情况好了很多,基本不会有随便一点就报错,或者影响大流程的问题。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

只有拼尽全力,才能看到成功的曙光。每一步都不要放弃,否则你永远无法达到自己心中的梦想。在困难面前坚持下去,你会因为自己的勇敢而变得更加强大。记住,今天的付出是明天的回报!

每一次的努力,都是你成为更好的自己的机会。不要害怕失败,因为它们只是你成功路上的一部分。相信自己的能力,并继续前进,你会发现你可以超越自己的极限,成就更大的梦想!

只有在坚持不懈的努力中,才能获得真正的成功。每一份付出,都将带来相应的回报。不要放弃,继续追求自己的目标,永不言败。只要你愿意去尝试,就一定会创造奇迹。

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

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

相关文章

excel 给合并的单元格进行序号填充

一、问题描述 提示:这里描述项目中遇到的问题: 在使用excel 的时候,是否遇到过要给合并单元格排序的情况,下拉会显示需要相同的单元格才行,如图: 二、解决方案 目的是给单元格计数,所以使用…

Module not found: Error: Can‘t resolve ‘fs‘ in ‘/root/workspace/

项目发版时 因为webpack5 不会自动引入polyfills 导致报了一系列错, 按照提示做如下配置 externals 官网文档解释的很清楚,就是webpack可以不处理应用的某些依赖库,使用externals配置后,依旧可以在代码中通过CMD、AMD或者wi…

打车/代驾/跑腿小程序源码司机入住uniapp/thinkphp

开发代驾顺风车货运 客户端:Uniapp 开发 司机端:Uniapp 开发 后台:thinkphp5 框架 数据库:MySQL 打车/代驾/跑腿小程序源码司机入住uniapp/thinkphp 为什么用UNIAPP开发? UNIAPP框架简单,学习成本低…

Spring(IOC,DI,事务)属性

Spring(IOC,DI,事务)属性 IOC 概念 Inverse Of Controll:控制反转;反转了依赖关系的满足方式,由之前的自己创建依赖对象,变为由工厂推送。(变主动为被动,即反转)解决了…

1_5 optical_flow

采用特征点法做VO存在耗时较大的问题,一般耗时情况:如下 (1) 在图像中提取特征点并计算特征描述, 非常耗时 ~10ms ORB,shift耗时更多; (2) 在不同图像中寻找特征匹配, 非常耗时 …

day43|动态规划5-不同0-1背包的问题形态

关键点: 找到前后两种状态的依赖关系 经典0-1背包: 给定一个背包,问装满该背包的最大价值。分割等和子集: 给定一个背包,能不能装满该背包(将重量抽象成价值)最后一块石头重量: 给一…

如何快速图片压缩指定大小?图片压缩到200k以内的方法

图片压缩到200k以内的介绍 在现代社交媒体和网页设计中,高质量的图片是必不可少的。但是,大型图像文件可能会导致页面加载时间过长,从而影响用户体验。这时就需要使用图片压缩技术来将图片文件大小减小到合理的范围内。其中,将图…

稳健地对时间序列光学卫星图像进行配准教程

一、引言 几何误差会导致连续卫星图像采集之间的错位,进而影响土地监测和变化检测分析。在这篇博客文章中,我们研究了如何稳健地对时间序列光学卫星图像进行配准,以减少这种错位的影响。 在本篇博客的末尾,给出用Python配准大区域…

【TES710D-EXT】基于复旦微的FMQL10S400全国产化ARM核心模块之扩展板

板卡概述 TES710D-EXT是专门针对我司TES710D(基于复旦微FMQL10S400的全国产化ARM核心板)的测试扩展板。 FMQL10S400是复旦微电子研制的全可编程融合芯片,在单芯片内集成了具有丰富特点的四核处理器(PS)和可编程逻辑&am…

B/S架构与C/S架构的区别

B/S与C/S区别: 1、c/s架构主要应用于局域网内,而b/s架构主要应用于广域网中; 2、c/s架构一般面向相对固定的用户群,对信息安全的控制能力很强,而b/s架构对安全的控制能力相对弱; 3、B/S架构维护升级比较简单…

考研算法复试刷题第20天:Dijkstra求最短路 【有向图的最短路径问题】

Dijkstra求最短路 我们先来说说这道算法的过程: 和上道题不同的是我们这次是求一个有向图到最终节点的最短距离,所以其策略也有所不同。我们先手动模拟一下过程吧假如有4个点,有他们之间有五条边,那么我们如何来求其1到4的最短路…

【Daily Share】觉得浏览器low?手写一个浏览器扩展程序,让自己的浏览器变得与众不同!!!!

浏览器扩展 概念 扩展为浏览器添加了特性与功能。它通过我们所熟悉的 Web 技术-HTML,CSS 还有 JavaScript 来创建。扩展可以利用与 JavaScript 相同的网页 API,但是扩展也可以访问它自己专有的 JavaScript API。这意味着,和在网页里编码相比…

音视频基础知识

视频基础知识 分辨率 分辨率又称为解析度,分辨率越高,像素越多,图像越清晰。 视频分辨率:又称为图像分辨率,由视频的宽高组成,表示形式宽x高,常见的视频分辨率有480P、720P、1080P、2K(2048x…

动态规划-书籍复印

动态规划-书籍复印 1 描述2 样例2.1 样例 1:2.2 样例 2: 3 解题方法3.1 算法解题思路3.2 算法代码实现 该题是lintcode上的算法题,该题的解题思路是依据九章侯老师提供的解题思路去处理的: https://www.lintcode.com/problem/437/description 1 描述 给…

ACL2023 | 黑盒大模型如何微调?清华Decoder Tuning方法提升大模型few-shot场景效果

一、概述 title:Decoder Tuning: Efficient Language Understanding as Decoding 论文地址:https://arxiv.org/abs/2212.08408 代码:GitHub - thunlp/DecT 二、Motivation 现在有很多模型只提供API,没法直接训练,…

关键字 package、import的使用

一、package 关键字的使用 为了更好的实现项目中类型的管理,提供了包的概念使用package声明类或接口所属的包,声明在源文件的首行包 术语标识符,遵循标识符的命名规则、规范(xxxyyyzzz)、“见名知意”每 “ . ”一次&…

自动化测试selenium环境搭建

自动化测试工具selenium搭建 1. 自动化和selenium基本概念 1) 什么是自动化?为什么要做自动化? 自动化测试能够代替一部分的手工测试,自动化测试能够提高测试的效率。随着项目功能的增加,版本越来越多,版本的回归测试的压力也…

DEI脉冲发生器维修DEI脉冲电源维修PVX-4130

DEI电源维修型号包括:PVX-4130,PVX-4140,PVX-4150,PVX-4120,PVX-5500等型号均可维修。 美国DEI脉冲发生器维修PULSE Generator高压电源维修 DEI脉冲发生器产生高压波形至3500V。 针对高阻抗进行了优化电容性负载,很适合驱动静电引气格栅和偏转板飞行时间质谱仪中粒…

FP独立站不同支付方式的注意事项是什么?

今天,给FP独立站的老板们介绍2个独立站支付方式,以及这些不同的支付方式分别有什么注意事项。 一、PayPal支付 大部分建站平台都支持PayPal支付通道。如果是做美国市场的独立站卖家,PayPal每笔固定收取0.3美金不同比例的手续费,不…

IOS复杂震动AHAP文件编辑指南

简介 目前部分游戏会在播放一些特定的音乐音效时,令设备产生贴合音效的复杂震动,给玩家一个更好的游戏体验。这种复杂震动就是通过苹果的CoreHaptics库实现的。 下面是关于CoreHaptics的官方文档 ​​​​​​​Core Haptics | Apple Developer Docum…