一、幂等性概念
1、幂等简介
编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。就是说,一次和多次请求某一个资源会产生同样的作用影响。
2、HTTP请求
遵循Http协议的请求,越来越强调Rest请求风格,可以更好的规范和理解接口的设计。
- GET:用于获取资源,不应有副作用,所以是幂等的;
- POST:用于创建资源,重复提交POST请求可能产生两个不同的资源,有副作用不满足幂等性;
- PUT:用于更新操作,重复提交PUT请求只会对其URL中指定的资源有副作用,满足幂等性;
- DELETE:用于删除资源,有副作用,但它应该满足幂等性;
- HEAD:和GET本质是一样的,但HEAD不含有呈现数据,仅是HTTP头信息,没有副作用,满足幂等性;
- OPTIONS:用于获取当前URL所支持的请求方法,满足幂等性;
二、测试方法
使用Jmeter、testNG或者是Junit5的并发功能,参数不变,多线程并发测试,假如10个请求并发,数据表只有1条数据,则接口无幂等性问题,假如有10条数据,则接口有幂等性问题
三、总结
只有post请求有幂等性问题