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

news2025/1/11 12:46:42

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

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

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

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

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

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

2 说说你之前公司的研发管理流程
参考答案(常规的流程):

产品经理整理需求文档、绘制产品原型,并组织产品、开发、测试相关人员召开需求评审会议。

评审之后,开发人员开始编写代码,并进行单元测试;测试人员同步开始编写测试用例、评审测试用例。

开发完成后提测,部署到测试环境,测试人员开始测试,包括集成测试、系统测试等等。测试完成后,对测试结果进行分析,编写测试报告,最后产品发版/上线。

上线后持续关注线上产品是否正常运行。

3 如何保证被测产品质量/用例覆盖度
参考答案:

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

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

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

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

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

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

说明与分析:

以上仅供参考,面试的时候随机应变,不要照抄照搬,结合你们公司的情况、说得越全越好。
现在流行测试左移、右移。测试左移,是往测试前的开发阶段移,越早发现不合理的地方,出现问题的几率就越低。

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

至于如何保证测试用例的覆盖率,可以回答(1)-(4)点,在描述第(2)点时,也可以说说你在设计测试用例时着重要考虑的点。比如,一些软件的业务流程比较复杂,设计测试用例不能只局限于表面的功能,要去深挖,多思考可能出现的场景;再比如一些边界值的测试、异常流程的测试等一些容易忽略的方面。

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

参考答案:

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

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

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

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

总结下来,就是按前→后→前的顺序进行分析。

说明:

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

5 如果你提的BUG开发不认为是BUG怎么办
参考答案:

(1)首先测试人员要确保这确实是个bug(如果是误测,那只能测试人员自己背锅了);

(2)在测试环境将BUG复现出来,保存好截图、相关测试数据,发给开发人员,或直接给开发人员演示一遍;

(3)如果开发人员还认为不是BUG,或者是由于技术问题很难修改的BUG,可以叫上产品经理、开发负责人,一起讨论一下;

(4)对于等级比较低的建议性BUG,可以先记录到BUG管理系统,暂时不用说服开发去修改,后续再进行跟进。

6 Web测试和移动端APP测试有什么区别
分析:Web端为B/S架构,即浏览器/服务器模式,直接在网页端进行测试;移动端APP一般为C/S架构,即客户端/服务端模式,是需要在移动设备上安装的。

如果你之前的工作中只测试过APP/Web其中一种,那也不要说另外一种没测过、不了解。

参考答案:

兼容性方面:Web端是网页形式,主要考虑不同浏览器的兼容性,测试时会在几大主流浏览器谷歌、Edge、火狐等进行兼容性测试;另外还要考虑屏幕的分辨率;

移动端APP的兼容性测试要考虑不同设备(不同手机/Pad品牌、型号、屏幕大小、分辨率)、不同安卓/iOS版本。

性能方面:web主要关注页面的响应时间;APP测试除了响应时间还要关注电量、流量、CPU、内存等。

安装、卸载、升级方面:web是不需要安装的,服务端升级后,客户端会自动更新;APP存在安装、卸载、升级的测试。

移动端专项测试:接听电话、收发短信、低电量提醒、闹铃、充电、查看通知、锁屏、横屏、手势、刷新、回退、前后台切换、网络切换等等。

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

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

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

我会从下面几个方面去进行用例的设计:

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

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

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

UI:检查界面是否有错别字,界面配色和布局、相关控件设计是否和UI设计一致。

兼容性:如果是web端登录,考虑浏览器、分辨率的兼容性;如果是移动端,考虑不同手机设备、不同屏幕大小、不同系统版本的兼容性。

性能方面:考虑用户从点击登录到登录成功的响应时长;多用户并发同时操作时功能是否正常。

安全性:考虑敏感数据如密码的传输和存储是否加密、是否明文存储在本地。

稳定性:看是否有闪退、崩溃、无响应等情况。

网络测试方面:网络状况不好时能否登录成功,异常提示是否正确等。

专项:如果是移动端的登录,还要考虑电话、短信、锁屏、横屏、重启等的影响。

8 你之前是如何进行接口测试的
参考答案:

首先获取接口规范、接口文档、需求文档,设计接口测试功能用例,用例设计要考虑单接口和多接口业务流程。
单接口主要进行接口的正确性和健壮性验证,要考虑各种入参验证(正常情况、异常情况,包括输入参数个数不对,类型不对,可选/必选,还要考虑参数互斥或关联的情况)、接口返回值各种验证(符合接口文档需求)。

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

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

9 遇到困难,你是怎么解决它们的
参考答案:

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

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

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

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

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

参考答案:

比较困难的事情在工作中还是很常见的,我上一份工作中就遇到过这样的情况:
开发提测的版本经常出现影响流程的BUG,导致测试无法进展下去,影响测试进度。

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

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

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

10 你对未来的职业规划是什么
分析:面试必问,可以谈谈短期目标、长期目标,最好加上为了达到这个目标你做了哪些努力。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

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

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

相关文章

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

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

Linux | 安装openGauss数据库

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

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

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

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

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

鸿蒙APP外包开发上线流程

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

怎么为pdf加水印?

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

什么是CRM管理系统

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

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

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

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

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

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

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

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

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

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

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

Mac安装Homebrew

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

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

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

macOS下如何使用Flask进行开发

👨🏻‍💻 热爱摄影的程序员 👨🏻‍🎨 喜欢编码的设计师 🧕🏻 擅长设计的剪辑师 🧑🏻‍🏫 一位高冷无情的编码爱好者 大家好,我是全栈工…

随机链表的复制

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

【leaflet】学习笔记5 自定义控制层、多图层及其控制 重构

▒ 目录 ▒ 🛫 导读开发环境 1️⃣ 重构data.js 数据抽取MyMap 面向对象编程继承MyMap类 2️⃣ d5. 自定义控制层、多图层及其控制示例效果自定义控制层多图层及其控制 🛬 文章小结📖 参考资料 🛫 导读 开发环境 版本号描述文章…

【机器学习】特征工程:特征预处理,归一化、标准化、处理缺失值

特征预处理采用的是特定的统计方法(数学方法)将数据转化为算法要求的数字 1. 数值型数据 归一化,将原始数据变换到[0,1]之间 标准化,数据转化到均值为0,方差为1的范围内 缺失值,缺失值处理成均值、中…

【机器学习11】强化学习

1 基本概念 一个机器人在环境中会做各种动作, 环境会接收动作, 并引起自身状态的变迁, 同时给机器人以奖励。 机器人的目标就是使用一些策略, 做合适的动作, 最大化自身的收益。 整个场景一般可以描述为一个马尔可夫…

C++初阶:STL之string类

一.为什么学习string类? 在C语言中没有字符串这一数据类型,都是用字符数组来处理字符串,C也支持这种C风格的字符串。除此之外,C还提供了一种自定义数据类型--string,string是C标准模板库(STL)中的一个字符串类&#x…