本章详细介绍下接口case的场景如何分析、如何拆分每个检查点。希望给大家带来帮助~
首先允我废话下~!!!对接口(interface)进行简单的阐述!!!
接口协议:HTTP、MQ、UDP等
http协议:get、post、put、head、soap请求等
get请求 请求的数据会附加在URL之后,以?分割URL和传输数据,多个参数用&连接。URL的编码格式采用的是ASCII编码,而不是uniclde,即是说所有的非ASCII字符都要编码之后再传输。
post请求 POST请求会把请求的数据放置在HTTP请求包的包体中 因此,get请求的数据会暴露在地址栏中,而post请求则不会。 ps:get和post对传输数据大小和url长度进行限制,具体可配置服务容器(apache、IIS等)
OK~ 回归正传~接口请求的过程如下!!!
外部数据源无外乎DB&第三方Interface
那么问题来了~看到上列图,场景如何分析呢?case如何输出呢?才能达到高覆盖度!!!
步骤1:根据相同参数不同出参值
1.产品类型
ep:如接口中一个出参值定义---可以根据proMode划分4个场景
2.布尔类型
ep:如接口中一个出参值定义---可以根据true和false划分2个场景
步骤2:隐藏场景 最最最主要环节!!!
1、依赖接口分析场景
ep:如依赖接口中一个出参值定义 火车销售状态和火车余票
由于我们只需要在售状态的数据,其它过滤
步骤3:特殊类型入参值
1、不同入口
ep:如接口中一些入参定义
2、布尔类型
ep:上例中useCache和unauditedFlag
3、默认类型
ep:如接口中一些入参定义
可以设计case如下
步骤4:特殊类型入参值的范围
入参值范围-范围不同返回结果不同
ep:如接口中一些入参定义 ---根据width值切图
可以设计case如下
各位小伙伴!!请注意!!!以上场景的考虑和划分都是从正常场景考虑的!!!
接下来考虑异常场景!异常校验!!!
1、参数值不匹配
2、必选参数为空
3、参数值边界校验
另外版本控制的考虑!!!
版本控制 ep:如接口中一个出参值定义
可以设计场景如下
我相信介绍到以上小伙伴们很清楚的了解了接口case 如何输出,如果还不知道输出场景划分,那么照照镜子,扪心自问下,镜子里是不是头猪~
总结一点结论给大家~