10个很好的接口测试面试题
接口测试流程是什么?
回答接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。接口测试也是属于功能测试,所以跟我们以往的功能测试流程并没有太大区别,测试流程依旧是:
1、评审测试接口文档(需求文档)得到其接口地址、入参和出参(预期结果)等信息RESTful
2、根据接口文档编写测试用例(用例编写完全可以按照以往规则来编写,例如等价类划分,边界值等设计方法)
3、设计接口脚本,使用Postman或JMeter填入接口请求、测试用例以及断言,实现完整的接口测试脚本。
4、执行测试,查看不同的参数请求,接口的返回的数据是否达到预期。
static/image/hrline/1.gif
接口(API)文档包含哪些部分
1. 包含请求方法、请求地址
2. 请求参数(主要在请求体中,有的参数在URL中)返回结果说明(预期结果)
static/image/hrline/1.gif
请你简述一下接口用例是什么?
参考答案:
接口测试用例其实可以包括两个部分,接口脚本和数据用例。接口脚本就是咱们在接口工具中所设计的HTTP请求,包括请求URL、请求参数和请求Body等。
数据用例一般是指保存在csv文件中的测试数据,包括用例标题、请求数据和预期结果三个部分。请求数据一般是通过等价类边界值设计出来的多组测试数据。
static/image/hrline/1.gif
如何分析一个bug是前端还是后端的?
平常提bug的时候,前端开发和后端开发总是扯皮,不承认是对方的bug
这种情况很容易判断,我们的业务过程是用户在浏览器输入数据转为请求后台程序(接口)处理产生响应转为结果页面
先抓包看请求报文,对着接口文档,看请求报文有没问题则说明正确。有问题就是前端发的数据不对,属于前端没有把用户数据正确转化为请求。如果前端输入后,无法生成请求,若有Bug则也只能是前端Bug。
请求报文没问题,那就看返回报文,若返回报文正确而前端页面显示不正确,则也是前端解析响应不正确,属于前端Bug。如果返回的数据不对,那就是后端开发的问题咯。而大多数时候是后端Bug更多,并且后端Bug会更严重,影响的是业务逻辑和数据的正确性。
你平时在工作中都使用Fiddler做哪些工作
1. 抓包
Fiddler最大的作用就是抓包,通过捕获所有的HTTP请求和响应数据,通过分析请求和响应定位缺陷是前端Bug还是后端Bug。
Fiddler抓包可以导出为jmx文件(需要一个插件),给到JMeter做接口自动化测试和性能测试
2. 通过打断点实现篡改请求
针对于页面输入框有长度限制或内容限制,可以通过bpu打断点。在断点处篡改请求信息,检查服务器对特殊数据(篡改后的数据)的处理结果。从而实现绕过界面,验证后台业务的容错能力。并且通过打断点方式,其服务器处理结果可以直接在页面上显示,测试过程非常直观友好。
3. 用Fiddler实现弱网测试
在规则菜单选择Performance项,设置为Simulate Modem Speeds即为弱网模式。如果页面能够在弱网模式下正常打开,则说明弱网测试通过,否则前端需要对页面进行压缩。
:lol 1111 点赞
页:
[1]