51Testing软件测试论坛

标题: 软件接口测试中的幂等测试你了解吗? [打印本页]

作者: 梦幻小丑灯    时间: 2021-11-26 14:44
标题: 软件接口测试中的幂等测试你了解吗?
我们知道一个网站的访问中会有很多各种各样的接口请求。
  比如说拿一个购物网站来说,有注册,有登录,有浏览商品,有添加购物车,查询购物车商品这些接口,还有一类特殊的接口,比如:支付。
  我们都知道接口一般都会存在这样一个过程,通过前端发起一个接口请求,也就是我们所说的request,请求以http发送给服务器,服务器接收到对应的请求之后,处理完成,会将处理的结果通过网络再返回给我们客户端也就是我们常说的response。

  但是存在这一一个情况,我request出去,由于网络抖动等原因,response没来得及返回,我又请求了一次,那么如果不作处理这时候会产生用户重复两次的情况。
  对于一般的查询等接口没什么影响,大不了我向服务器重新请求拉取数据等等。
  但是支付这些接口,就会产生一些问题,一旦我请求了2次,没有重复性校验等机制会产生付款2次的可能性。

  再加上很多时候,开发对应同步超时的处理代码写的本身就有问题。
  第三方的框架比如dubbo,zuul,ribbon+Fegin,以及中间件Nginx本身就有重试机制等等。
  分布式主备机之间的通信也有很多重试机制。还有类似于高并发,比如淘宝的双十一,京东的618。
  那么我们该怎么测试这些呢?
  第一,从产品的业务逻辑设计和实现上,查看是否做了幂等,比如与时间戳进行幂等。
  第二,遇到支付这些业务的时候,跟多的需要考虑构造支付失败,检查失败之后的处理机制。
  第三,前端测试,通过快速点击,手动的难以实现,可以使用UI自动化手段进行实现。
  第四,后端接口调用。使用jmeter或者postman多次重复发送参数相同的请求,查看服务器返回给我们的response。

本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理










欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2