精选接口测试面试题
1、接口测试基础
1、公司接口测试流程是什么?
从开发那边获取接口设计文档、分析接口并进行用例设计、并提前录入到接口测试工具Jmeter,等开发那边进行调试的时候(集成测试),执行接口测试用例,把发现的缺陷提给开发。
2、从开发那获取接口设计文档之后,你如何进行分析?
3、接口测试用例设计主要使用哪些用例设计方法?
接口测试一般只需要考虑入参形式的变化和接口的业务逻辑,一般设计接口测试用例采用等价类、边界值、场景法居多。
4、接口测试执行中比对数据库吗?
需要进行,因为接口的返回值类似于提示信息,而接口对数据的操作还要进行深层次的检查。
5、谈谈你对 HTTP 协议的了解?
6、get 和 post 请求有什么区别?
7、响应状态码有哪些?
8、在接口测试过程中发现的 bug 多不多?
在联调阶段执行接口测试发现的 bug 会很多,在冒烟测试、回归测试阶段执行接口测试的时候,bug 就很少。
9、详细描述之前测过的一个接口如何设计用例?
该题目考察你是否做过真正的接口测试。需要根据简历中的项目去预先人为的造一些接口,然后进行讲解。
比如:在上一个项目中,我做过一个获取手机验证码的接口,该接口需要使用 post 方式传递一个手机号参数,传送成功,返回状态码为 0 的接口信息,并能收到验证码;手机号错误,返回状态码为-10001 和提示信息;已注册的手机号返回状态码为-10003 和提示信息;我在进行该接口用例设计的过程中,考虑这三种业务情况,分别设计一个测试用例。
10、描述之前发现过的接口缺陷?
该题目和上题类似,根据简历中的项目去造一些接口缺陷,回答思路可以先向上题一样。先讲一个接口业务逻辑,然后再讲,比如我之前使用已注册手机号去调用该注册接口返回状态码为 0,注册成功,实际应该返回-10003 才对。
11、接口测试中有哪些要注意的测试点?
12、接口执行测试后返回结果做对比,一般比对哪部分内容?
之前必须要对比的就是返回状态码,其次再去对比返回其它关键内容。
13、为什么开展接口测试?
2、接口测试工具
1、之前在接口测试过程中,使用的工具是什么?
Postman 和 Jmeter
2、之前用过抓包工具没有?如何使用的?
之前在项目中用过 Fiddler 抓包工具进行 HTTP 协议请求的抓取。 打开 Fiddler 之后,默认浏览器配置了 127.0.0.1 8888 端口的代理,在 Fiddler 设置好过滤策略后,打开需要进行抓包的网站进行操作,就可以进行抓包。
3、json 数据是什么,你平时如何解析 json 数据?
一种开发常用的数据报文格式,由键值对和数组两种格式构成。
可以通过工具 bejson 网站等。
4、Postman 你在工作中使用流程是什么样的?
5、Postman 中设置环境变量有什么用?
在之前项目中,接口测试测试的环境有开发环境,测试环境等,为了测试的时候方便,就在 Postman 设置环境变量,到时所有接口都引用该环境变量,这样就不用为了切换环境导致每次都去修改被测系统接口的主机地址;点击右上角环境变量管理按钮-新建环境变量,在脚本中使用{{变量名}}去调用。
6、在接口测试中关联是什么含义?如何用 Postman 设置关联?
关联就是把上一个接口返回值的部分截取出来,作为下一个接口的参数,能让接口串联运行。
在 Postman 中设置关联的步骤如下:
7、Postman 支持什么类型的协议测试?
http 和 https 协议的
8、Postman 参数化有哪几种方式?
内建变量、pre-scripts 编写 js 脚本、批量运行时导入 csv 或 json 格式的文件。
9、Newman 如何执行 Postman 脚本?
Newman run 脚本名称 也可以添加参数生成 html 报表等。
10、Jmeter 之前用的是什么版本?如何安装的?
Jmeter 用的是 5.1.1 版本
安装如下: 先在电脑上安装 jdk1.8 或以上的版本,然后从官网下载最新的安装包,解压后,进行环境 变量的配置,配置好后即安装完成。
11、在项目中如何用 Jmeter 进行接口测试?
12、Jmeter 中如何设置断言?
右击请求---断言---响应断言---响应断言界面输入要检查比对的项,设置好断言后,执行接口测试如果是通过的,查看结果树不会有任何提示,如果断言失败,就会有红色报错。如果接口返回的数据是 json 数据,也可以添加 json 断言。
13、Jmeter 中如何实现关联?
先从上一个接口中通过正则表达式提取器或 jsonpath 解析器截取下一个接口需要的参数值保存到变量,然后在写一个接口中通过${变量名}去获取。
14、Jmeter 添加 http 请求默认值元件有什么作用?
添加并设置好后,相当于给所有的 http 请求取样器都设置了默认值,既不用填写取样器中的比如主机地址、端口、代理等,都可以使用 http 请求默认值设置的。
15、Jmeter 参数化的方式有哪几种可以实现?
本文分享自 AllTests软件测试 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!