接口测试|常见面试题及答案

张开发
2026/5/18 1:19:11 15 分钟阅读
接口测试|常见面试题及答案
1.你们接口测试具体怎么做?一般开发把接口开发出来之后会给到我们一个接口文档首先要搞清楚这个接口的功能它的作用是什么请求方式有哪些参数。参数有什么限制类型是什么是否必填对于参数有不清楚的一般我们会问下开发通过以上几个点去设计用例。设计好用例之后我们利用工具进行检测我们公司当时用的是JMeter 来做接口测试的。首先我们要建立一个线程组,然后添加取样器(http 请求)然后填写接口的协议地址端口请求方式路径及根据用例填写请求参数添加一个监听器去查看接口返回的数据然后执行然后依据接口文档对比返回的数据是否与预期结果一致对于返回的响应的数据的检查我们主要关注以下几个点状态码提示信息具体的正文内容看与接口文档说明的是否一致如果有问题我们先大概分析下看是否能定位出具体原因实在不行就直接提Bug 给开发让开发修复之后最回归复测。2.两个接口有关联JMeter 具体怎么做这个涉及到动态关联首先要搞清楚后一个接口需要用到上一个接口的什么数据例外要看数据是在哪里取的是在head 还是在body 里然后如果要取的数据是json 格式我会在发请求用json 提取器去取这个数据如果是其他格式的就用边界提取器或正则表达式去取数据。就拿我当时做的那个下单接口来说吧因为下单接口需要先登录需要用到登录接口的cookies 来做鉴权首先就是把登录接口调试通过然后在登录接口的http 请求中添加一个边界值提取器或者也可以用正则表示式提取器去提取登录接口的响应头中的cookies 值然后在下单接口中需要添加一个http cookies 管理器在http cookies 管理器中引用登录接口提取出来的cookies这样就可以了。如果是不同的线程组的话那在登录接口中还得添加一个Beanshell 取样器在BeanShell 取样器中利用函数助手中的SetProperty()函数把提取出来的cookies 设置为全局变量。然后在下单接口的http cookies 管理器中利用函数助手中的Property()函数引用登录接口中设置的全局变量这样就可以了。3.接口测试的流程首先分析开发给到的接口文档接口文档分析完成编写测试用例然后借助接口测试工具去测试执行测试用例发现bug 提交bug,并跟进bug 修复4.接口测试主要目的是什么?主要就是验证后台服务端的业务逻辑有没有问题提高测试的效率其实接口测试就是功能测试保证功能的业务逻辑没有问题但是从接口方面来说直接测试接口的话就是直接验证后台的业务逻辑这样效率更好例外接口测试不会受到输入界面的影响那界面所做出的一些限制也就不存在了我们直接测的就是后台这一块儿可以检查后台有没有做到相应的限制。检查后台的数据交互、逻辑以及容错机制以保证后台系统的安全性。5.接口测试和平常的UI 测试有什么区别?其实这两者测试的侧重点是不同的接口因为没有界面更多考虑后台服务器对请求的处理逻辑问题业务交互检测的是后台“容错机制”是否完整;而UI 更多会去关注页面展示数据转换界面排序这些功能当然也会后台数据处理的问题UI 测试其实已经包含了接口测试。系统功能的用例更全面不仅有界面的也有业务功能用例还有其他用户场景的用例功能入口用例流程用例而接口测试主要根据各种入参场景来设置用例。6.给你一个新的接口你怎么去设计用例?首先要对于每个要测的接口都要先搞清楚这个接口的功能它的作用是什么熟悉这个业务功能需要用到什么协议请求方式是什么接口有哪些参数。对于每个参数的作用都要搞清楚像数的类型是否有约束限制是否为必填的长度其他的限制等等如果两个参数之间有关联我们还要考虑参数的组合场景对于参数不理解的一般都会跟开发沟通下然后考虑返回数据的类型返回数据中的返回码和返回信息是什么通过以上几个点去提炼测试点设计用例。最好举例说明下7.接口测试和集成测试有何区别?集成测试是验证多个组件在一起工作的过程而接口测试则更加关注这些组件之间的交互和通信。接口测试主要关注数据的正确传输、错误处理和一致性而集成测试关注多个组件之间的协同工作和功能集成。8.接口文档主要包含哪些内容?接口文档一般两种形式的要不就是word 版本的要不就是html 的形式具体内容URL(接口地址)接口功能请求方式post请求参数以及接口中每个参数的详细说明类型是否为必填约束条件啊等等响应数据及格式 返回码返回码解释等等9.在进行接口测试时你会使用哪些工具?在接口测试中常用的工具包括Postman、JUnit、JMeter等。这些工具能够帮助你发送请求、验证响应、处理错误以及执行性能和负载测试。10.上传文件的接口用JMeter 怎么做要测试上传文件的接口在JMeter 的http 请求这个组件中传递请求参数的栏目中专门提供了一个用来文件上传的在这里面需要填写几个内容一个就是文件的路径还有一个就会参数名称还有就是MIME 类型也就是指定要上传的文件的类型这样就可以了。

更多文章