在软件测试职位面试中,准备并回答一些常见的必问面试题非常重要。这些问题涵盖了软件测试的关键概念、技术和实践,帮助面试官评估你的能力和经验。理解这些问题的重要性是为了在面试中展示你的专业知识和技能,以及你在软件测试领域的实际应用。
首先,回答这些问题可以展示你对软件测试的理解和认识。面试官想要知道你是否理解软件测试的目标和重要性,以及你对测试过程和方法的了解程度。你的回答应该能够说明你对软件测试中各个方面的理解,并解释为什么软件测试在软件开发生命周期中是至关重要的。
其次,这些问题可以评估你的技术能力和经验。面试官可能会询问你关于测试计划、测试策略、缺陷管理、性能测试和自动化测试等方面的问题。通过回答这些问题,你可以展示你的技术知识、测试技巧和工具使用能力,以及你在实际项目中的经验。
此外,回答这些问题还可以展示你的问题解决能力和分析能力。面试官可能会提供一些挑战性的场景或问题,要求你解释你在类似情况下的做法和决策。通过展示你的分析思维、解决问题的能力和决策能力,你可以证明你是一个有逻辑思维和解决问题能力的软件测试人员。
总之,准备并回答软件测试人员十大必问面试题对于成功通过软件测试职位面试非常重要。这些问题涵盖了软件测试的关键概念、技术和实践,帮助面试官评估你的能力、经验和专业知识。通过深入理解这些问题的重要性,并准备相应的答案,你可以在面试中展示你的软件测试技能和知识,增加获得职位的机会。
一、介绍之前负责的项目
参考答案:先大概描述一下这个项目是做什么的(主要功能),包括哪些模块,是什么架构的(B/S、C/S、移动端?),你在其中负责哪些模块的测试。期间经历了几个大版本及几个小版本的迭代。
全程参与需求评审、测试用例编写、搭建测试环境、测试、BUG跟踪、上线等环节。在测试过程涉及到常规的功能测试、使用Postman进行接口测试、简单的性能测试等等。
测试过程中也会使用SQL Server(类似的数据库)进行增删改查、使用抓包工具进行抓包、根据后台日志进行数据分析、辅助测试等。
分析:理论上测试人员是最了解产品的,产品经理可能只知道产品的功能、业务,而测试人员除此之外,还熟悉产品内部的实现逻辑。这道题考察你对项目的熟悉程度,以及根据你负责的内容判断你的能力。
之前面试过一个小伙子,应该是培训机构出来然后包装的简历,问他负责的模块,他说是一个商城“我的”界面。又问,我看你这个项目快一年嘞,只负责过这一个模块吗?答曰,是。是挺坦诚的哈,但是如果你是面试官你会留他吗?后来想一想,他应该是担心写得越深、问得越多,越容易暴露自身的弱点吧。
所以说,写项目经验,要拣有含金量、能体现你能力的写。就算你没有实际的经验,现在网上开源项目那么多,去找个网站、APP从头到尾深入测一遍,撸清楚流程,面试的时候能说得头头是道也可以的。
另外,给培训机构出来的小伙伴一个建议,不要照抄照搬培训机构给的官方答案,你以为你的简历写得很完美,可是在阅人无数的面试官面前,10秒之内就可以判断出你的简历是虚假的还是真实的。说一说我的经验,培训包装的简历,很多都是3年外地工作经验,负责过的项目名称和工作内容千篇一律,有的甚至一个字儿都不改。
这里不是歧视培训出来的小伙伴,转行的经历我也有。可现实是,简历是敲门砖,如果你的简历没有任何突出的地方,大概率连面试的机会都没有的。在成百上千份相似的简历面前,人家为什么偏偏抽中你呢?你的简历要有特点、有亮点。
二、说说你之前公司的研发管理流程/测试流程
1.产品经理整理需求文档、绘制产品原型,并组织产品、开发、测试相关人员召开需求评审会议。
2.评审之后,开发人员开始编写代码,并进行单元测试;测试人员同步开始编写测试用例、评审测试用例。
3.开发完成后提测,部署到测试环境,测试人员开始测试,包括集成测试、系统测试等等。测试完成后,对测试结果进行分析,编写测试报告,最后产品发版/上线。
4.上线后持续关注线上产品是否正常运行。
三、如何保证被测产品质量/用例覆盖度
1.在需求评审阶段,熟悉并分析需求,对每条需求进行拆解,并对有疑问的地方及时和产品经理/BA沟通;
2.在设计测试用例阶段,我一般根据需求文档用XMind对测试点进行整理,然后再对每个测试点进行测试用例的设计;另外,我们产品经理会在研发管理系统里建立他的需求,我设计测试用例时会将用例关联到需求上面,确保每个需求都有用例覆盖到;
3.在用例评审阶段,我们一般先组内进行详细的评审;然后召集产品经理、开发一起评审,主要是评审一些业务流程和跨系统的接口,确保大方向没有问题,之后根据评审结果及时修正测试用例;
4.在测试阶段,我们会有交叉测试,因为每个人考虑问题的角度不一样。另外在测试过程中,如果发现用例有考虑不周全的地方,会及时完善进去;
5.在BUG修复我们进行验证时,会将这个BUG相关联的部分也测试一下,防止一些代码改动影响到之前的功能;
6.在上线前,会进行一个深度回归,回归的用例会和开发、产品一起评估决定。
四、如何定位问题/判断BUG是前端还是后端
面试官问到这个问题可能会举个例子,比如一个登录界面,输入用户名密码后点击【登录】发现无响应怎么回事?
1.首先要明白场景的数据流调用逻辑,这个场景就是前端触发一个操作,然后后端给出响应,最后前端将返回的登录后信息渲染并在界面展示出来。】
2.我会用抓包工具 (Fiddler/Charles/浏览器的F12等),看点击登录的时候有没有触发请求,如果没有请求或请求有问题,那就是前端的BUG。
3.如果前端请求没问题,就看后端返回报文,根据接口文档,返回的数据有误,要具体分析报错的内容。如果是前端传参不对导致的,那就是前端问题,如果传参正确,后端处理不正确,那可能就是后端问题。
4.如果后端响应了且数据和接口文档一致,那就是前端展示的问题。
五、如果你提的BUG开发不认为是BUG怎么办
1.首先测试人员要确保这确实是个bug(如果是误测,那只能测试人员自己背锅了);
2.在测试环境将BUG复现出来,保存好截图、相关测试数据,发给开发人员,或直接给开发人员演示一遍;
3.如果开发人员还认为不是BUG,或者是由于技术问题很难修改的BUG,可以叫上产品经理、开发负责人,一起讨论一下;
4.对于等级比较低的建议性BUG,可以先记录到BUG管理系统,暂时不用说服开发去修改,后续再进行跟进。
六、Web测试和移动端APP测试有什么区别
1.兼容性方面:Web端是网页形式,主要考虑不同浏览器的兼容性,测试时会在几大主流浏览器谷歌、Edge、火狐等进行兼容性测试;另外还要考虑屏幕的分辨率;
2.移动端APP的兼容性测试要考虑不同设备(不同手机/Pad品牌、型号、屏幕大小、分辨率)、不同安卓/iOS版本。
3.性能方面:web主要关注页面的响应时间;APP测试除了响应时间还要关注电量、流量、CPU、内存等。
4.安装、卸载、升级方面:web是不需要安装的,服务端升级后,客户端会自动更新;APP存在安装、卸载、升级的测试。
5.移动端专项测试:接听电话、收发短信、低电量提醒、闹铃、充电、查看通知、锁屏、横屏、手势、刷新、回退、前后台切换、网络切换等等。
七、给你一个登录界面/优惠券你怎么进行测试
1.功能测试:我会根据需求文档,将界面划分成几个小模块,比如注册、登录、忘记密码等,然后对每个小模块进行用例的设计。
2.注册可能要考虑手机号、邮箱等不同注册方式;登录要考虑正常登录、异常登录,会使用边界值、等价类划分法来设计用例;忘记密码要考虑不同的密码找回方式。(功能这一块可以再展开详细地说)
3.如果涉及到接口的,我会使用工具Postman来进行接口测试。
4.UI:检查界面是否有错别字,界面配色和布局、相关控件设计是否和UI设计一致。
5.兼容性:如果是web端登录,考虑浏览器、分辨率的兼容性;如果是移动端,考虑不同手机设备、不同屏幕大小、不同系统版本的兼容性。
6.性能方面:考虑用户从点击登录到登录成功的响应时长;多用户并发同时操作时功能是否正常。
7.安全性:考虑敏感数据如密码的传输和存储是否加密、是否明文存储在本地。
8.稳定性:看是否有闪退、崩溃、无响应等情况。
网络测试方面:网络状况不好时能否登录成功,异常提示是否正确等。
9.专项:如果是移动端的登录,还要考虑电话、短信、锁屏、横屏、重启等的影响。
八、你之前是如何进行接口测试的
1.首先获取接口规范、接口文档、需求文档,设计接口测试功能用例,用例设计要考虑单接口和多接口业务流程。
2.单接口主要进行接口的正确性和健壮性验证,要考虑各种入参验证(正常情况、异常情况,包括输入参数个数不对,类型不对,可选/必选,还要考虑参数互斥或关联的情况)、接口返回值各种验证(符合接口文档需求)。
3.多接口业务流程测试主要关注业务流和数据流,也就是多个接口的串联操作能否满足需求文档里的需求。
4.我们公司使用postman进行接口测试,根据接口文档,先选择请求方式,然后输入url,发送请求,看接口返回的数据。
九、在测试过程中,有没有遇到过比较困难的事情,你是怎么解决它们的
比较困难的事情在工作中还是很常见的,我上一份工作中就遇到过这样的情况:
开发提测的版本经常出现影响流程的BUG,导致测试无法进展下去,影响测试进度。
因为是小公司,没有一个规范的产品研发、测试标准,但是这样下去工作效率只会越来越低。
因此我,作为团队的核心成员,主导拟定了一套产品提测标准。要求开发自测用例覆盖度(也就是冒烟测试范围)、执行通过度要达到一定的标准,否则测试可以无条件驳回。
经过一段时期的试运行,后面情况好了很多,基本不会有随便一点就报错,或者影响大流程的问题。
十、你对未来的职业规划是什么
面试必问,可以谈谈短期目标、长期目标,最好加上为了达到这个目标你做了哪些努力。
常常复习软件测试面试题的重要性在于帮助应聘者熟悉常见问题,并准备相关答案。这样做可以增加应聘者的自信心,提高应对面试挑战的能力。通过复习面试题,应聘者可以更好地展示他们的技能、知识和经验,向面试官展示他们适应和胜任软件测试职位的能力。
总结:
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。