接口测试面试题整理(付答案)

1、什么是HTTP协议无状态协议?怎么解决HTTP协议无状态协议

是指协议对于事务处理没有记忆能力,服务器不知道客户端是什么状态。即我们给服务器发送 HTTP 请求之后,服务器根据请求,会给我们发送数据过来,但是,发送完,不会记录任何信息。

解决方案:通过cookie和session来保持状态。 

2、HTTP协议学了哪几个版本

http协议目前有4个版本(0.9,1.0,1.1,2.0),其中1.0、1.1版本在互联网上被广泛使用,2.0版本目前应用很少,是下一代的http协议。 

3、Session和Cookies区别

cookie数据存放在客户的浏览器上,session数据放在服务器上。cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗考虑到安全应当使用session。session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能考虑到减轻服务器性能方面,应当使用COOKIE。单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。 

4、HTTPS在哪一层, 会话层在第几层

https工作在应用层.会话层为7层协议的第五层,为表示层提供建立、维护和结束会话连接的功能,并提供会话管理服务。 

5、你熟悉OSI协议吗?原理是什么

OSI是一个开放性的通信系统互连参考模型,它是一个定义得非常好的协议规范。OSI模型有7层结构,每层都可以有几个子层。OSI的7层从上到下分别是 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 ;其中高层(即7、6、5、4层)定义了应用程序的功能,下面3层(即3、2、1层)主要面向通过网络的端到端,点到点的数据流。 

6、从HTTP变化到HTTPS协议,测试点

注意一些配置是否同步修改有些url是否是写死在代码的,需要同步修改有些通过类cms配置的页面,需要更新检查是否更新域名如果有存在和第三方接口联调的,需要检查是否彼此都更新了。相关联业务系统之间互相调用是否存在问题,比如http调用https的情况。 

7、购物车模块, 加入购物车接口测试点分析

接口入参校验:是否必填,临界值,默认值,枚举值,参数组合业务逻辑校验:新增商品进购物车,当购物车达到最大值是否可以添加,重复添加单一商品验证最大添加次数,没有库存的商品是否可以添加到购物车,一次添加超过库存量的商品。安全性:是否校验登录状态异常:接口的异常返回结果是否有专有提示,如网络异常,接口超时,系统异常性能:多用户并发操作购物车,同一商品被多用户同时操作到购物车 

8、http://...?orderId=,**, 接口设计用例

接口入参长度是否满足get接口url的长度不同的orderid是返回不同的订单信息orderid不存在的情况,接口返回orderid过长过短的情况,接口返回删除一些非必填项入参,调用接口,返回什么删除一些必填项入参,调用接口,返回什么不同的入参组合,正常的组合异常的组合,返回什么 

9、一个订单的几种状态如何全部测到,如:未处理,处理中,处理失败,处理成功

未处理和处理成功都好测试,正常流程就可以覆盖处理中可以通过制造网络延迟来观测处理中的状态,或者用fiddler来打断点处理失败可以通过网络超时来呈现处理失败的状态,或者抓包修改接口返回值为处理失败的状态。 

10、你平常做接口测试的过程中发现过哪些Bug

权限未处理,导致一般用户可以通过接口获取管理员权限可以输入一些前端限制过的值,比如提取积分接口,通过修改积分为负数,这个在前端无法测试,因为前端会限制你的输入值不能为负,而接口没做相关限制,导致你的积分越提取越多。 

11、平常你是怎么测试接口的

根据接口文档设计接口测试用例,使用postman工具实现测试用例,根据不同的用例设置不同的断言,并且保存在集合中。可以通过执行集合的方式重复批量执行接口测试用例。把接口的url设置为环境变量,当需要切换不同的环境的时候,只需要使用postman的切换环境功能就可以自由切换,在不同环境下测试接口。设计接口与接口之间有关联的测试用例,通过postman在断言中设置环境变量的方式,保存上游接口的返回值,下游接口调用这个变量,完成接口与接口的关联场景的测试 

12、平常用什么工具测接口的

postman SoapUI jmeter

13、不可逆的操作,如何处理,比如删除一个订单这种接口如何测试

关注接口的返回值是否正常关注数据库中的订单表的数据是否被删除关注是否有删除记录表存放相关删除的记录,方便日后可以追溯 

14、测试的数据你放在哪

本地文件的形式存放

15、response怎么验证, 参数特别多

postman使用断言的方式进行判断

16、做接口测试如何分析是前端还是后端的问题

抓包,查看接口的返回值,根据返回值和前端页面的展示作比较,判断是前端对这个值的处理有问题还是后端返回的值是错误的。

17、在测试接口中怎么知道请求成功还是失败

根据接口文档查看具体入参应该返回什么值,和接口实际上返回的值做对比。

18、请详细阐述接口测试和UI测试在测试活动中是如何协同测试的?

有些ui测试无法实现的场景可以用接口进行辅助测试,比如前端ui会对某些输入框作出限制,导致某些负值,超出最大长度限制的值无法测试,而通过接口就可以发送这样的值。ui有时候还会对某一个功能重复点击作出限制,如果想测试用户在网络系统异常的情况下连续点击了2次这个按钮,那么通过前端点击可能测试不了,就要通过接口连续并发的方式测试

19、很多接口都需要登录怎么处理?

如果是postman工具的话,把登录的cookie值存储在环境变量中,需要登录状态的接口直接引用该环境变量去实现。 

20、依赖于登录的接口如何处理 -token 和 session的管理

答案同19题

21、在手工接口测试或自动化接口测试的过程中,上下游接口有数据依赖如何处理?

postman工具,使用断言工具中的设定环境变量。对上游接口的返回值中的依赖数据进行变量化,然后在下游接口的入参中引用该变量,完成依赖。

22、接口测试中依赖登录状态的接口如何测试

答案同19题

23、下个接口请求参数依赖上个接口的返回数据

答案同21题

24、Web Service接口是如何测试的

开发人员要到接口的wsdl地址和接口设计说明书。在soapui中新建工程,导入wsdl地址。选择自己要测试的接口的方法,选择request。根据接口设计说明书选择要测试方法的xml请求,并粘贴到soapui的请求栏,然后用自己的测试数据替换原有的xml请求中的参数。点击运行,查看返回的xml响应,并参照接口设计说明书及自己的输入参数,确定接口返回的xml响应是否是预期结果,以判断接口是否是通的  

25、TCP报头格式

(1)16位端口号:告诉主机该报文段是来自哪里,以及传给哪个上层协议或者应用程序(目的端口)的。(2)32位序号:给发送的数据编号。(随机值+偏移量(偏移量决定序号的大小));32位序号能够指定数据传送过去的序号。作用:A、保证发送的数据有序;B、保证重复的数据报被丢弃。(3)32位确认号:对A端发送的数据进行确认并回馈的序号。(在32位序中的序号值加1返回回去)。作用:保证数据能够有效地到达对端。(4)4位头部长度:因为4位最大能表示15,所以最大为60个字节。(5)6位标志位:PSH:通知尽快读取数据;RST:请求重新建立连接;SYN:请求建立连接;FIN:请求断开连接;ACK:表示确认号是否有效;URG:表示禁忌之阵是否有效。(6)16位窗口大小:控制发送数据的速度或流量。(7)16位校验和:由发送端填充,接收端对TCP报文段在传输过程中是否损坏。检验不仅包括头部部分,还包括数据部分。(8)16位紧急指针:一个正的偏移量(相当于当前序号的偏移)。紧急指针是发送端向接收端发送紧急数据的方法。TCP的特点的可靠性就体现在:32位序号,32位确认号16位校验和。面向连接体现在:URG、RST、SYN、FIN、ACK、PSH等六位标志。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十二说软件测试

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值