文档章节

面试官:没搞懂接口测试这些点,哪里来的自信投简历?

o
 osc_cdixgndu
发布于 07/01 13:14
字数 1503
阅读 24
收藏 0

精选30+云产品,助力企业轻松上云!>>>

 

 

1,目前市面上流行的接口大多有哪几种协议的接口?

答:http,https,dubbo,rpc等即可。

 

2,接口的请求方式有哪几种?

答:get,post,put,delete,head,Trace,opions等,大多以get和post请求为主

 

3、get和post区别是什么?

答:POST和GET都是向服务器提交数据,并且都会从服务器获取数据。

区别:

(1)传送方式:get通过地址栏传输,post通过报文传输,故而post更相对来说私密性一点

(2)传送长度:get参数有长度限制(受限于url长度),而post无限制

(3)get请求参数会被完整保留在浏览历史记录里,而post中的参数不会被保留

(4)get方式大多用作查询接口,获取响应数据;而post方式更多做数据添加、修改或删除等操作

4,post请求的请求类型有哪几种?

[if !supportLists]·        [endif] 

application/json      json字符串

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

application/x-www-from-urlencoded 

  表单传递

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

multipart/form-data 

   主要用于上传文件

[if !supportLists]·        [endif] 

5、cookie和session的区别

[if !supportLists]·        [endif] 

cookie数据存放在客户的浏览器上,session数据放在服务器上

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面应当使用cookie

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

可以将登陆信息等重要信息存放为session;其他信息需要保存,可以放在cookie

[if !supportLists]·        [endif] 

6、请求接口中常见的返回状态码

答:

[if !supportLists]a.     [endif] 

1xx -- 信息提示(表示临时的响应。客户端在收到常规响应之前,准备接收一个或多个1xx响应)

[if !supportLists]b.     [endif] 

[if !supportLists]c.      [endif] 

2xx -- 成功(表明服务器成功地接受了客户端请求)

[if !supportLists]d.     [endif] 

[if !supportLists]e.     [endif] 

3xx -- 重定向(客户端浏览器必须采取更多操作来实现请求,例如用户未登录就操作了修改的功能)

[if !supportLists]f.       [endif] 

[if !supportLists]g.     [endif] 

4xx -- 客户端错误(发送错误,客户端有问题)

[if !supportLists]h.     [endif] 

[if !supportLists]i.       [endif] 

5xx -- 服务器错误(服务器由于遇到错误而不能完成该请求)

[if !supportLists]j.       [endif] 

常见的有:

[if !supportLists]·        [endif] 

200 OK:服务器成功返回用户请求的数据

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

201:用户新建或修改数据成功

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

202:表示一个请求已经进入后台排队(异步任务)

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

301:删除请求数据

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

302:在其他地址发现了请求数据

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

303:建议客户访问其他URL或访问方式

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

304:客户端已经执行了GET,但文件未变化

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

400 :用户发出的请求有错误,服务器没有进行新建或修改数据的操作

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

401:表示用户没有权限(令牌、用户名、密码错误)

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

403 :表示用户得到授权(与401错误相对),但是访问被禁止

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

404:用户发出的请求针对得到是不存在的记录,服务器没有进行操作,该操作是幂等的

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

500:服务器发生错误,用户将无法判断发出的请求是否成功。

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

502:服务器返回超时

[if !supportLists]·        [endif] 

7、接口测试用例如何进行设计

[if !supportLists]·        [endif] 

针对输入,可按照参数类型进行设计,参数是否必填,参数之间是否存在关联,参数数据类型限制,参数数据类型自身的数据范围值限制;

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

针对接口处理,可按照逻辑进行用例设计;

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

针对输出,可根据结果进行分析设计。

[if !supportLists]·        [endif] 

 

8、如何分析是前端还是后端的问题

答:

[if !supportLists]·        [endif] 

检查接口,前端和后台之间是通过接口文件相互联系的,需要查看接口文件

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

检查请求的数据是什么,反馈的数据又是什么

[if !supportLists]·        [endif] 

[if !supportLists]·        [endif] 

页面可以直接F12,或者抓包查看。如果发送的数据是正确的,但是后台反馈的数据是不符合需求的,那就是后台的问题;如果前端没有请求接口或请求的时候发送数据与需求不符,那这个时候就是前端的问题了。

[if !supportLists]·        [endif] 

 

9、接口测试中,下游接口需要依赖上游接口的数据,该如何处理?

答:在工具中可以使用全局变量等方式将需要的数据进行传送,或者使用对响应数据进行提取,传给下游接口。

 

10、依赖第三方数据的接口如何进行测试?

 

答:可以使用fiddler进行调用接口时预设期望响应,mock返回自己设置的响应数据,最大限度的降低对第三方数据接口的依赖

 

11、若请求的接口需要先登录后方可请求,如何进行接口测试?

答:请求登录口获取返回的响应头,或者响应信息中的数据,cookie,token,session等,传递给依赖登录接口的请求头中,发起请求即可。

 

o
粉丝 0
博文 57
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
三年前端面试经验加感悟

19年年底的时候从工作了两年半的公司离职,用了半个月的时看面试题及刷算法,半个月后开始投递简历,分别投了阿里、百度、快手和字节跳动,除了阿里一面匆匆忙忙电话面试把我咔掉了之外,其他...

osc_h4tvmq2d
03/21
33
0
三年前端面试经验加感悟

19年年底的时候从工作了两年半的公司离职,用了半个月的时看面试题及刷算法,半个月后开始投递简历,分别投了阿里、百度、快手和字节跳动,除了阿里一面匆匆忙忙电话面试把我咔掉了之外,其他...

清夜
03/14
0
0
双非本科找实习准备过程(获鹅厂offer)

@双非本科找实习准备过程(获鹅厂offer) 实习准备过程and反思 大一懵懵懂懂的我走进了计算机的世界,当时什么都不懂,虽然还是认真的学习基本课程,但只是表面的学习,比如C语言,因此自己就...

pengcwlee
04/05
0
0
我的第一次外包面试

  在it这个行业中,相信很多人经常不可避免的听到一个词‘外包’,尤其是对于找工作的朋友们,更是一种艰难的选择,为什么这么说呢? 因为对于一些从培训班出来的新人进入互联网行业,有时...

osc_o60il3e6
04/16
9
0
面试就是你来我往,互相了解

序 首先,每家公司都有不同的公司文化,对技术人员的要求都不尽相同。有的公司希望你踏踏实实干,不需要你很多稀奇古怪的想法,只要按部就班完成功能即可;有的公司则乐意看到员工的创造力,...

你如世间春秋
2019/01/25
6
0

没有更多内容

加载失败,请刷新页面

加载更多

Kafka如何在千万级别时优化JVM GC问题?

大家都知道Kafka是一个高吞吐的消息队列,是大数据场景首选的消息队列,这种场景就意味着发送单位时间消息的量会特别的大,那既然如此巨大的数据量,kafka是如何支撑起如此庞大的数据量的分发...

hummerstudio
06/18
6
0
我打赌!90%程序员都破解不了这个粽子,不信你试!

放假了 各位读者朋友们,马上就是端午小长假啦,开心激动有木有? 新的故事文章还在创作中,写了初稿感觉不太满意又推倒重来。其实写故事还是挺难的,读者可能第一次第二次有新鲜感,写多了就...

轩辕之风
06/24
20
0
如何删库跑路?教你使用Binlog日志恢复误删的MySQL数据

前言 “删库跑路”是程序员经常谈起的话题,今天,我就要教大家如何删!库!跑!路! 开个玩笑,今天文章的主题是如何使用Mysql内置的Binlog日志对误删的数据进行恢复,读完本文,你能够了解...

后端技术漫谈
01/14
22
0
PHP设计模式之代理模式

PHP设计模式之代理模式 代理人这个职业在中国有另外一个称呼,房产经济人、保险经济人,其实这个职业在国外都是叫做房产代理或者保险代理。顾名思义,就是由他们来帮我们处理这些对我们大部分...

硬核项目经理
2019/09/23
7
0
Redis的复制模式

Redis的复制功能分为同步(sync)和命令传播(command propagate)两个操作。 同步 同步操作用于将从服务器的数据库状态更新至主服务器当前所处的数据库状态。 1. 旧版本的执行步骤 从服务器...

osc_s9cni3go
30分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部