我们知道一个网站的访问中会有很多各种各样的接口请求
比如说拿一个购物网站来说,有注册,有登录,有浏览商品,有添加购物车,查询购物车商品这些接口,还有一类特殊的接口,比如:支付。
我们都知道接口一般都会存在这样一个过程,通过前端发起一个接口请求,也就是我们所说的request,请求以http发送给服务器,服务器接收到对应的请求之后,处理完成,会将处理的结果通过网络再返回给我们客户端也就是我们常说的response。
但是存在这一一个情况,
我request出去,由于网络抖动等原因,response没来得及返回,我又请求了一次,那么如果不作处理这时候会产生用户重复两次的情况
对于一般的查询等接口没什么影响,大不了我向服务器重新请求拉取数据等等
但是支付这些接口,就会产生一些问题,一旦我请求了2次,没有重复性校验等机制会产生付款2次的可能
再加上很多时候,开发对应同步超时的处理代码写的本身就有问题
第三方的框架比如dubbo,zuul,ribbon+Fegin,以及中间件Nginx本身就有重试机制等等
分布式主备机之间的通信也有很多重试机制
还有类似于高并发,比如淘宝的双十一,京东的618
那么我们该怎么测试这些呢?
第一,从产品的业务逻辑设计和实现上,查看是否做了幂等,比如与时间戳进行幂等
第二,遇到支付这些业务的时候,跟多的需要考虑构造支付失败,检查失败之后的处理机制
第三,前端测试,通过快速点击,手动的难以实现,可以使用UI自动化手段进行实现
第四,后端接口调用。使用jmeter或者postman多次重复发送参数相同的请求,查看服务器返回给我们的response
作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:开心螺蛳粉】自提!
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
行动吧,在路上总比一直观望的要好,未来的你肯定会感谢现在拼搏的自己!如果想学习提升找不到资料,没人答疑解惑时,请及时加入群:1150305204,里面有各种测试开发资料和技术可以一起交流哦。