51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 4168|回复: 0
打印 上一主题 下一主题

[转贴] 面试软件测试,有什么建议或面试题预测?

[复制链接]
  • TA的每日心情
    无聊
    3 天前
  • 签到天数: 1050 天

    连续签到: 1 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2021-3-24 09:55:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    一、测试技能面试题准备
      不同测试方向,对应的测试技能是不同的。
      以下就是针对不同的测试方向,核心需要掌握的技能。
      · 功能测试可以理解为软件测试的基础,是必须要会的。
      · 接口测试其实起到的是承上启下的作用。不了解接口测试,之后的接口自动化以及性能测试就根本入不了门。
      · 自动化测试是初级测试工程师与中级测试工程师的分界线,如果要想拿到更好的offer,不懂代码是不行的。

      二、预测常见的面试题
      1、技术类的问题
      1) 怎么保证软件产品的质量?
      答:1.需要团队共同来参与测试;2.需求就开始介入;3.发现问题不能放过;4.加强技术,通过用例集来记录测试点防止有场景未被覆盖到。
      2) 你在公司中,是怎么准备测试数据的?
      答:1.把生产环境数据脱敏之后,导入到测试环境;2.通过业务逻辑,构造测试(例如需要登录,可以先注册然后再使用注册账号进行登录);3.通过数据库创建,这里面有分为"按照业务逻辑设计测试数据"和"通过导入的方式来设计测试数据"两种方式;4.通过代码来创建测试数据。
      3) 你们公司是怎么划分BUG的严重等级的,为什么这么划分?
      答:我们公司主要分为4个等级:严重、高、普通、一般。
      严重:一般是系统级别的错误,会导致系统奔溃,严重影响用户使用;以及影响范围广的BUG 。
      高:不会导致系统崩溃,但是会有导致功能出现异常的BUG,不满足需求设计的BUG。
      普通:边界值错误等。
      一般:易用性错误,提示性错误等等。
      4) 在实际工作当中,你主要从哪些维度设计测试用例
      答:我们设计用例时主要从功能、性能、安全、网络、兼容性、UI界面、专项测试这几大块。
      其中功能,重点关注我们软件产品有没有实现具体的功能,只要测试是通过测试用法论,设计测试用例来进行测试。
      性能上,我们主要考虑功能操作的响应时间,以及CPU、内存、网络、磁盘IO的消耗情况。
      安全上,我这边没有深入的进行测试,但是有一定的了解,我知道需要进行敏感信息是否加密、SQL注入等一些简单的安全测试
      网络上,我们需要关注,无网络、弱网、网络之间的切换的测试点 兼容性上,主要关注不同的版本兼容,如果是前端界面,需要关注分辨率等测试,如果是手机需要关注操作系统的兼容性。
      UI界面上,主要是关注一些UI测试点,按钮是否可用,界面之间是否能够顺利的跳转,布局等这些测试。 专项测试:针对一些独有的功能进行测试。
      5) 你在公司当中,是怎么分析定位BUG的?
      答:在公司里面,我们定位BUG必须借助工具才能完成。
      例如我们可以使用fiddler抓包,抓取接口的信息,如果是前端问题,那么在前端输入信息,和fiddler抓到的请求肯定会不一样。如果是接口的响应数据有问题,那么就是后端BUG。
      怎么深入定位后端里面的BUG呢?
      这个时候,我们需要借助日志来完成,我们按照开发提供的日志文件路径,来使用关键字搜索对应时间所产生的错误日志,根据日志的描述,来判断问题出在哪个方面。如果日志文件看不懂,可以让开发帮助查询分析。
      一般BUG的来源有这么几个:
      · 开发修复BUG引发的BUG
      · 开发新功能引发的BUG
      · 开发使用了依赖的第三方插件导致BUG
      · 缓存导致的BUG
      6) 你们公司是如何做接口测试的?
      答:1.先进行需求分析,了解此次迭代需要实现的功能;
      2.解析API文档,了解此次迭代都新增了哪些接口,又有哪些接口更改了;
      3.根据API文档,编写测试用例;
      4.使用接口测试工具来完成接口测试用例的执行,常用的接口测试工具postman或者jmeter;
      5.在测试的过程中,需要进行缺陷管理以及跟踪,确认开发即使响应,并且快速修复问题;
      6.生成测试报告,将测试结果同步到项目组,来确定此次迭代是否可以上线;
      7.考虑将此次迭代的接口,编写到接口自动化项目中,方面之后的回归测试。
      7) 什么时候开展接口测试?
      答:1.开发给出API文档的时候,我们就可以开始编写接口的测试用例,这里有一个常识性的知识点:开发给出API文档的时候,接口并没有被开发出来;
      2.后端的开发提测的时候,我们就可以开始进行接口的测试了(实现接口的测试用例);
      3.接口测试完成或者快完成,我们就可以开始考虑使用代码实现接口的自动化。
      8) GET和POST有什么区别?
      答:1.Get通过URL来传输数据,POST通过URL和请求体传输数据,在请求体中的数据,我们是无法直接观测到的。
      2.在安全性上,GET没有POST安全。但是他们都不是绝对安全。因为POST中的数据,可以通过抓包获取。
      3.在数据大小上,GET有限制,而POST没有上限。
      9) 你在实际工作当中,是怎么解决数据之间的依赖关系的?
      答:我在之前的XXXXX项目中,参与了的接口测试中,有大量接口存在依赖关系,以登录和添加员工接口为例。添加员工接口依赖了登录接口;我们使用的工具是POSTMAN,我这边通过先提取登录返回的令牌,然后保存到环境变量,再在下一个添加员工接口中,引入保存的环境变量,实现关联。
      10) 自动化测试的优缺点?
      答:优点: 自动化测试,可以很好的进行回归测试,自动化测试,能够解决手动测试一些难以测试的场景 自动化测试,可以解决一些复杂的业务逻辑。
      缺点: 不能完全代替手工测试, 自动化测试的脚本的编写和维护比较困难,对于质量比较低的代码,不适合做自动化。 对于需求变更频繁的项目,项目周期比较短的项目也不适合做自动化。
      11) 请简单介绍下PO模式的原理?
      答:什么是PO模式,它有什么作用?
      PO模式,英文全称PageObject;它主要是为了减少代码重复,让代码可读性更强,更容易维护。
      PO设计模式是怎么进行设计的?
      PO设计模式主要包括三层:对象层、操作层、业务层 ;
      对象层:主要封装某些元素定位的方法;
      操作层:封装元素的一些特定操作;
      业务层:把一个或多个操作组合成具体的业务,实现具体的功能测试。
      用最简单的案例描述PO模式:
      那么接下来我们就以登录页面为例,来描述PO设计模式的实现过程。
      step1: 先实现BasePage基类,这个基类当中主要是实现driver的获取。通过这个driver可以进行 兼容性测试;
      step2: 根据BasePage基类,实现对象层,封装登录页面的元素定位,封装定位用户名、密码、 确认按钮的定位方法;
      step3: 根据封装定位方法,封装他们的操作,例如输入用户名和密码,点击确认按钮;
      step4: 根据封装LoginPage页面和操作类,实现登录的测试。
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏2
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-24 03:23 , Processed in 0.063982 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表