• 0
  • 0
分享
  • 软件测试/测试开发:常见面试题与流程篇——软件测试圈
  • 彩霞红红 2024-10-15 16:24:25 字数 2901 阅读 113 收藏 0

  本系列文章总结归纳了一些软件测试工程师常见的面试题,主要来源于个人面试遇到的、网络搜集(完善)、工作日常讨论等,分为以下十个部分,供大家参考。如有错误的地方,欢迎指正。有更多的面试题或面试中遇到的坑,也欢迎补充分享。希望大家都能找到满意的工作,共勉之!

  一、测试常见问题和流程篇

  1. 介绍一下测试流程(重点,常见!)

  需求评审、测试计划、测试用例、用例评审、冒烟测试、测试执行、验收测试、风险评估、上线\观察、问题跟进、测试报告、复盘会议。

  根据自己的日常经验来回答,每个点的工作内容都需要清晰掌握,有可能就某个点如何工作进行提问。

  2. 介绍一下测试方法

  按阶段:单元测试、集成测试、系统测试、验收测试。

  按手段:黑盒测试、白盒测试、灰盒测试。

  其他:冒烟测试、回归测试。

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

  黑盒测试用例设计:等价类划分法、边界值分析法、错误推测法、因果图法、正交试验分析法、流程分析法。

  白盒测试:语句覆盖、判定覆盖、条件覆盖、条件组合覆盖、判定/条件覆盖、路径覆盖。

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

  功能测试:正确输入、为空输入、字符类型校验、长度校验、密码是否加密显示、大写提示、跳转页面是否成功、登出后用另一个账号登录。

  UI:界面布局合理、风格统一、界面文字简洁好理解、没有错别字。

  性能测试:打开登录页面需要几秒、点击登录跳转首页需要几秒、多次点击、多人点击。

  安全性:用户名和密码是否加密发送给服务器、错误登录的次数限制(防止暴力破解)、一台机器登录多个用户、一个用户多方登录、检查元素能否看到密码。

  兼容性测试:不同浏览器、不同的平台(Windows、Mac)、移动设备能否工作。

  易用性:输入框可否tab键切换、回车能否登录等。

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

  (例)推动开发解决菜单权限需退出登录才可应用的问题。

  描述:XX项目上线后,由于权限更新导致用户无法使用旧界面+用户不懂得自己退出登录以应用新菜单权限,线上多个用户反馈平台相关功能无法使用。处理:远程操作+线上指导出现问题的用户退出登录,凌晨脚本批量强制用户退出登录。推进:在下一次版本中,推动开发处理菜单权限更新问题,以防每次更新菜单都出现用户使用不了功能的问题。结果:处理为用户登录期间仍可使用旧界面,直到用户退出重新登录后,才应用新菜单权限。

  推动冒烟测试:冒烟不通过,测试召开会议罗列项目不通的模块、存在的问题,一一对应到每个人去跟进,得到解决的时间,后续项目群说明并艾特每个人跟进。测试准时验收。

  推动文档质量:在日常工作中遇到需求文档、设计文档、接口文档不规范或不详细的在绝大多数,这个时候就要通过沟通或以bug的形式,促使各个岗位将各自的文档完善。

  结合自己的个人经验,从问题描述+处理过程+推进表现+结果,一一说明。

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

  XX项目:这个项目是一个新项目、需要对接第三方、从协助测试产品模块到转手负责整个项目加强了一定的需求理解难度、订单逻辑不熟悉、其中需求的问题推进比较困难。

  针对这些困难,测试方面:先快速了解需求,并与原先的测试负责人了解具体的进度和需要注意的测试点。开发方面:迅速与开发人员了解订单逻辑,以及与第三方对接的过程。产品方面:遇到某个需求问题产品不接受、最后汇报领导+开会讨论了较好的处理方案。虽然过程问题比较多,但是通过项目组的集体努力,最后项目得以按时上线。

  说明项目(最好是简历上的项目方便面试官进一步提问)。描述有难度的地方+如何处理+结果。

  7. 印象深刻的一个bug?

  隐藏得比较深的bug、影响比较大的bug、处理过程比较曲折的bug。根据自己的经验描述:如何发现的、如何处理、影响、结果、反思。

  举例说明:如升级版本兼容性问题、接口安全性问题、数据库安全性问题、服务器资源占用溢出问题、代码逻辑问题等。

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

  是,敏捷快速迭代、多版本同时迭代。

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

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

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

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

  系统兼容(ios、安卓)、机型兼容(iPhone、华为、小米、三星、vivo、OPPO)、分辨率兼容、软件本身向前向后兼容。

  接口测试:获取接口文档,使用fiddler抓包工具获取接口的请求方式、url、请求参数、返回参数,然后使用postman、jmeter进行测试。

  11. 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外,还需监测流量、电量等。

  相对于 Web 项目,APP有专项测试。

  干扰测试:中断,来电,短信,关机,重启等。

  弱网络测试(模拟2g、3g、4g,wifi网络状态以及丢包情况);网络切换测试(网络断开后重连、3g切换到4g/wifi 等)。

  安装、更新、卸载

  安装:需考虑安装时的中断、弱网、安装后删除安装文件等情况。

  卸载:需考虑 卸载后是否删除 App 相关的文件。

  更新:分强制更新、非强制更新、增量包更新、断点续传、弱网状态下更新。

  界面操作:关于手机端测试,需注意手势,横竖屏切换,多点触控,前后台切换。

  安全测试:安装包是否可反编译代码、安装包是否签名、权限设置,例如访问通讯录等。

  边界测试:可用存储空间少、没有SD卡/双SD卡、飞行模式、系统时间有误、第三方依赖(QQ、微信登录)等。

  权限测试:设置某个 App 是否可以获取该权限,例如是否可访问通讯录、相册、照相机等。


作者:测试人

来源:http://www.51testing.com/html/50/n-7796350.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   最近的工作需要经常和测试打交道,但我并非这个细分领域的行家,看着几千条测试用例和五花八门的测试设备与工具,以及工程师展示的繁复曲线与图表,着实有些眼花缭乱,没太看懂,不由得陷入了深深的思索......  1 T型人才与焦利氏称  陷入思索有两个原因:一是确实没跟上节奏,只能佯装沉思,以掩饰尴尬,保持风度;二是汽车领域的知识太多了,没能力是一说,但也实在没必要事事跟上节奏,守好自己碗里的饭就不错了。  可是,我们不是要构建T型知识结构,成为综合性人才嘛。那怎么办呢?  写到这里,想到多年前的大学物理实验课,绝大多数课意料之内地忘得干干净净,但倒是记住了一堂——焦利氏称,原因是老师说的一句话,...
            0 0 766
            分享
          • 一、单元测试单元测试是对软件基本组成单元进行的测试,如函数或一个类的方法。程序是由函数组成的,每个函数都要健壮,这样才能保证程序的整体质量。单元测试是对软件未来的一项必不可少的投资。”具体来说,单元测试有哪些收益呢?它是最容易保证代码覆盖率达到100%的测试。可以⼤幅降低上线时的紧张指数。单元测试能更快地发现问题。单元测试的性价比最高,因为错误发现的越晚,修复它的成本就越高,而且难度呈指数式增长,所以我们要尽早地进行测试编码人员,一般也是单元测试的主要执行者,是唯一能够做到生产出无缺陷程序的人,其他任何人都无法做到这一点。有助于源码的优化,使之更加规范,快速反馈,可以放心进行重构。尽管单元测试...
            9 9 994
            分享
          • 读者提问:阿常你好,想请教一下,软件项目的上线有没有标准流程呀 ?阿常回答:有通用的上线发布流程。1、提交测试开发在开发环境自测通过后,撰写上线方案(包括配置文件、应用程序及部署顺序、数据库脚本、规划的上线时间、上线失败回滚步骤,以及涉及服务的影响范围),提交给相关负责人审批,审批通过后提交给测试人员。2、测试验证测试人员在测试环境测试并跟踪修改 BUG 达到上线标准,若达到上线标准,邮件通知开发、产品可以走正式上线流程。(如果有预发布环境的,多走一道预发布环境的测试验证)3、正式上线运维人员执行自动化应用部署,发布完成由运维通知测试、产品及业务进行线上环境的测试验证,如果发现需要紧...
            0 0 1605
            分享
          •   对每个职场人士来说,当工作步入正轨,开始稳定下来,那么关于未来的职业发展就是首要考虑的问题。测试人员也不例外,每天忙于业务测试,接触到的核心技术会比较少,如果不能提升自己的职业技能,拥有自己的核心竞争力,那么对于未来的发展会有很大的限制。  说的稍微严重一点,如果觉得测试只是枯燥的“用鼠标点点点”的工作,那么职业发展可能很快就会遇到瓶颈,甚至还有被行业淘汰的可能!  每个行业,每个岗位,都有自己的发展方向,测试工程师必有他的价值。有时候觉得看不到未来,也可能只是是自己站的不够高。想要未来大有可为,就需要不断的学习,提升自己的专业技能,让自己达到一定高度,毕竟站的更高,才能看的更远。对此,小...
            0 0 633
            分享
          • 比较测试将产品与之前版本或其他类似产品的优缺点进行比较称为比较测试。等价划分它是一种测试技术,也是黑盒测试的一种。在此 等价分区期间,会选择一组组并选取一些值或数字进行测试。可以理解,来自该组的所有值都生成相同的输出。此测试的目的是删除特定组中产生相同输出但没有任何缺陷的冗余测试用例。假设应用程序接受 -10 和 +10 之间的值,然后使用等价分区,选择用于测试的值是零、一个正值和一个负值。因此,此测试的等效分区是 -10 到 -1、0 和 1 到 10。示例测试示例测试是实时测试。它包括实时场景和基于测试人员经验的场景。这种类型的测试也被称为基于经验的测试,因为它使用测试人员对应用...
            0 0 884
            分享
      • 51testing软件测试圈微信