测试面试题集锦(一)| 软件测试常见必考问题与流程篇(附答案)

简介: ![](https://ceshiren.com/uploads/default/original/3X/5/2/524b1c71f55a89ee9afe9e9ad712400cea13dba2.jpeg)1.测试常见问题与流程篇2.测试工具篇3.计算机网络知识篇4.数据库篇5.Linux 篇6.Python 编程篇7.自动化测试篇:包含 Selenium、Appium 和接口测试
更多技术文章分享和免费资料领取
https://qrcode.testing-studio.com/f?from=Aliyun&url=https://ceshiren.com/t/topic/16586

1.测试常见问题与流程篇
2.测试工具篇
3.计算机网络知识篇
4.数据库篇
5.Linux 篇
6.Python 编程篇
7.自动化测试篇:包含 Selenium、Appium 和接口测试
8.性能测试篇
9.软素质篇:10 大灵魂拷问
10.反问面试官篇
11.介绍一下测试流程(重点,常见!)
  • 需求评审、测试计划、测试用例、用例评审、冒烟测试、测试执行、验收测试、风险评估、上线\观察、问题跟进、测试报告、复盘会议;
  • 根据自己的日常经验来回答,每个点的工作内容都需要清晰掌握,有可能就某个点如何工作进行提问。

12.介绍一下测试方法

  • 按阶段:单元测试、集成测试、系统测试、验收测试
  • 按手段:黑盒测试、白盒测试、灰盒测试
  • 其他:冒烟测试、回归测试

13.介绍一下测试用例设计方法(用例设计方法&测试方法需分清楚)

  • 黑盒测试用例设计:等价类划分法、边界值分析法、错误推测法、因果图法、正交试验分析法、流程分析法
  • 白盒测试:语句覆盖、判定覆盖、条件覆盖、条件组合覆盖、判定/条件覆盖、路径覆盖

14.设计一个登录页面的用例(提供某个场景设计用例,重点!)

  • 功能测试:正确输入、为空输入、字符类型校验、长度校验、密码是否加密显示、大写提示、跳转页面是否成功、登出后用另一个账号登录
  • UI:界面布局合理、风格统一、界面文字简洁好理解、没有错别字
  • 性能测试:打开登录页面需要几秒、点击登录跳转首页需要几秒、多次点击、多人点击
  • 安全性:用户名和密码是否加密发送给服务器、错误登录的次数限制(防止暴力破解)、一台机器登录多个用户、一个用户多方登录、检查元素能否看到密码
  • 兼容性测试:不同浏览器、不同的平台(Windows、Mac)、移动设备能否工作
  • 易用性:输入框可否tab键切换、回车能否登录等

15.举例说明项目推进的能力(针对个人评价的举例说明)

  • (例)推动开发解决菜单权限需退出登录才可应用的问题。
  • 描述:XX项目上线后,由于权限更新导致用户无法使用旧界面+用户不懂得自己退出登录以应用新菜单权限,线上多个用户反馈平台相关功能无法使用。处理:远程操作+线上指导出现问题的用户退出登录,凌晨脚本批量强制用户退出登录。推进:在下一次版本中,推动开发处理菜单权限更新问题,以防每次更新菜单都出现用户使用不了功能的问题。结果:处理为用户登录期间仍可使用旧界面,直到用户退出重新登录后,才应用新菜单权限;
  • 推动冒烟测试:冒烟不通过,测试召开会议罗列项目不通的模块、存在的问题,一一对应到每个人去跟进,得到解决的时间,后续项目群说明并艾特每个人跟进。测试准时验收。
  • 推动文档质量:在日常工作中遇到需求文档、设计文档、接口文档不规范或不详细的在绝大多数,这个时候就要通过沟通或以bug的形式,促使各个岗位将各自的文档完善。
  • 结合自己的个人经验,从问题描述+处理过程+推进表现+结果,一一说明。

16.测试中遇到的比较难的一个项目是?(掌握自己简历上的项目)

  • XX项目:这个项目是一个新项目、需要对接第三方、从协助测试产品模块到转手负责整个项目加强了一定的需求理解难度、订单逻辑不熟悉、其中需求的问题推进比较困难。
  • 针对这些困难,测试方面:先快速了解需求,并与原先的测试负责人了解具体的进度和需要注意的测试点。开发方面:迅速与开发人员了解订单逻辑,以及与第三方对接的过程。产品方面:遇到某个需求问题产品不接受、最后汇报领导+开会讨论了较好的处理方案。虽然过程问题比较多,但是通过项目组的集体努力,最后项目得以按时上线
  • 说明项目(最好是简历上的项目方便面试官进一步提问)。描述有难度的地方+如何处理+结果

17.印象深刻的一个bug?

  • 隐藏得比较深的bug、影响比较大的bug、处理过程比较曲折的bug。根据自己的经验描述:如何发现的、如何处理、影响、结果、反思。
  • 举例说明:如升级版本兼容性问题、接口安全性问题、数据库安全性问题、服务器资源占用溢出问题、代码逻辑问题等

18.你们公司是不是敏捷开发?介绍一下敏捷开发?

  • 是,敏捷快速迭代、多版本同时迭代
  • 敏捷开发属于增量式开发,对于需求范围不明确、需求变更较多的项目而言可以很大程度上响应和拥抱变化、主张简单、拥抱变化、可持续性、递增的变化、高质量的工作、快速反馈、软件是你的主要目标

19.复盘会议的主要内容有哪些?

  • 这点需要结合自己平时参与的项目会议举例说明。如线上bug分析、优化改进策略、bug优先级等等

20.App 的兼容性怎么测,App 的接口测试怎么测?

  • 系统兼容(ios、安卓)、机型兼容(iPhone、华为、小米、三星、vivo、OPPO)、分辨率兼容、软件本身向前向后兼容
  • 接口测试:获取接口文档,使用fiddler抓包工具获取接口的请求方式、url、请求参数、返回参数,然后使用postman、jmeter进行测试

21.Web 端测试和 App 端测试有何不同(常见)

  • 系统结构方面
  • Web 项目,b/s架构,基于浏览器的;Web 测试只要更新了服务器端,客户端就会同步会更新;
  • App 项目,c/s结构的,必须要有客户端;App 修改了服务端,则客户端用户所有核心版本都需要进行回归测试一遍;
  • 兼容方面
  • Web项目:a. 浏览器(火狐、谷歌、IE等)b. 操作系统(Windows7、Windows10、Linux等)
  • App项目:a. 设备系统: iOS(ipad、iphone)、Android(三星、华为、联想等) 、Windows(Win7、Win8)、OSX(Mac)b. 手机设备可根据 手机型号、分辨率不同
  • 性能方面
  • web项目 需监测 响应时间、CPU、Memory
  • app项目 除了监测 响应时间、CPU、Memory外,还需监测流量、电量等
  • 相对于 Wed 项目,APP有专项测试
  • 干扰测试:中断,来电,短信,关机,重启等
  • 弱网络测试(模拟2g、3g、4g,wifi网络状态以及丢包情况);网络切换测试(网络断开后重连、3g切换到4g/wifi 等)
  • 安装、更新、卸载
  • 安装:需考虑安装时的中断、弱网、安装后删除安装文件等情况
  • 卸载:需考虑 卸载后是否删除 App 相关的文件
  • 更新:分强制更新、非强制更新、增量包更新、断点续传、弱网状态下更新
  • 界面操作:关于手机端测试,需注意手势,横竖屏切换,多点触控,前后台切换
  • 安全测试:安装包是否可反编译代码、安装包是否签名、权限设置,例如访问通讯录等
  • 边界测试:可用存储空间少、没有SD卡/双SD卡、飞行模式、系统时间有误、第三方依赖(QQ、微信登录)等
  • 权限测试:设置某个 App 是否可以获取该权限,例如是否可访问通讯录、相册、照相机等

更多内容,我们在后续文章分享。

n原文链接

⬇️ 点击“下方链接”,提升测试核心竞争力!

更多技术文章分享和免费资料领取
https://qrcode.testing-studio.com/f?from=Aliyun&url=https://ceshiren.com/t/topic/16586
相关文章
|
2天前
|
自然语言处理 安全 Java
【软件测试】教你如何写一份软件测试报告
【软件测试】教你如何写一份软件测试报告
|
2天前
|
安全 Java 测试技术
【软件测试】测试工具推荐
【软件测试】测试工具推荐
|
15天前
|
安全 测试技术 网络架构
【专栏】编写网络设备割接方案的七个步骤,包括明确割接目标、收集信息、制定计划、设计流程、风险评估、准备测试环境和编写文档。
【4月更文挑战第28天】本文介绍了编写网络设备割接方案的七个步骤,包括明确割接目标、收集信息、制定计划、设计流程、风险评估、准备测试环境和编写文档。通过实际案例分析,展示了如何成功完成割接,确保业务连续性和稳定性。遵循这些步骤,可提高割接成功率,为公司的网络性能和安全提供保障。
|
16天前
|
机器学习/深度学习 数据采集 人工智能
【专栏】AI在软件测试中的应用,如自动执行测试用例、识别缺陷和优化测试设计
【4月更文挑战第27天】本文探讨了AI在软件测试中的应用,如自动执行测试用例、识别缺陷和优化测试设计。AI辅助工具利用机器学习、自然语言处理和图像识别提高效率,但面临数据质量、模型解释性、维护更新及安全性挑战。未来,AI将更注重用户体验,提升透明度,并在保护隐私的同时,通过联邦学习等技术共享知识。AI在软件测试领域的前景广阔,但需解决现有挑战。
|
1天前
|
运维 Kubernetes 测试技术
容器技术:优化软件测试流程的利器
本文介绍了容器技术的概念、优势和历史发展,对比了容器与虚拟机的区别,并提及了Docker和Kubernetes等常见容器技术。容器作为轻量级虚拟化工具,提供高效、灵活的应用部署方式,广泛应用于软件开发、云计算和微服务架构。随着技术演进,容器将在边缘计算、人工智能等领域发挥更大作用,推动行业变革。
11 3
|
2天前
|
移动开发 前端开发
基于若依的ruoyi-nbcio流程管理系统一种简单的动态表单模拟测试实现(五)
基于若依的ruoyi-nbcio流程管理系统一种简单的动态表单模拟测试实现(五)
|
6天前
|
缓存 监控 Java
干货 | 2024 年 Elasticsearch 常见面试题集锦
干货 | 2024 年 Elasticsearch 常见面试题集锦
29 0
|
14天前
|
敏捷开发 机器学习/深度学习 Java
Java中的异常处理机制深入理解与实践:持续集成在软件测试中的应用探索自动化测试在敏捷开发中的关键作用
【4月更文挑战第29天】在Java编程中,异常处理是一个重要的概念。它允许开发者在程序执行过程中遇到错误或异常情况时,能够捕获并处理这些异常,从而保证程序的稳定运行。本文将详细介绍Java中的异常处理机制,包括异常的分类、异常的处理方式以及自定义异常等内容。 【4月更文挑战第29天】 随着敏捷开发和DevOps文化的兴起,持续集成(CI)已成为现代软件开发周期中不可或缺的一环。本文将探讨持续集成在软件测试领域内的关键作用、实施策略以及面临的挑战。通过对自动化构建、测试用例管理、及时反馈等核心要素的详细分析,揭示持续集成如何提高软件质量和加速交付过程。 【4月更文挑战第29天】 在当今快速发
|
15天前
|
机器学习/深度学习 人工智能 自然语言处理
提升软件测试效率:智能化测试用例生成策略
【4月更文挑战第28天】 随着软件开发的复杂性不断增加,传统的软件测试方法面临巨大挑战。为了提高测试覆盖率并确保软件质量,需要投入大量的时间和资源去设计、执行和维护测试用例。本文探讨了一种基于人工智能(AI)技术的智能化测试用例生成策略,该策略能够自动识别关键的测试路径,动态调整测试用例,并优化测试集合。通过引入智能化工具和算法,显著提升了软件测试过程的效率和有效性。
|
16天前
|
测试技术
【测试】优化软件测试:有效测试用例设计的关键
【测试】优化软件测试:有效测试用例设计的关键