接口测试怎么才能做好?
这个问题还是从需求、测试用例设计、执行来说吧。
A.需求
首先要了解这个接口提供的服务的需求定义,那么我们就知道大概测试的结果是啥。同时理论上要先提供接口规范,方便后续测试,以及给调用者联调的一个文档约定。
B.测试用例设计
根据测试的接口规范,基于业务进行场景设计,再结合边界值设计方法、等价类划分等常用设计方法进行用例设计。
1.设计的方向是常规的测试用例设计:协议规范测试、接口入参、接口出参。
协议规范测试:比如HTTP协议:URL地址、Header测试。不过一般情况下,默认调用者按照接口规范正常调用。这个不用过于详细测试。
2.接口入参:参数个数测试(注意是否必传字段),参数值测试(为空、正常值、非法值等,以及首尾有空格是否过滤)。
3.接口出参:至少涵盖一条成功的响应和一条失败的响应,当然我们测试出更多错误码,我们的覆盖率也就更全面。
4.业务场景用例:这个需要你对于这个接口的业务的了解程度,而且这是最重要的部分。
比如中间使用了缓存服务(第一次缓存没有,是不是直接读数据源,并存入缓存;第二次直接读取缓存是否正确);
比如需要考虑请求外部的接口获取相应的信息的时间损耗(连接不上外部接口,外部接口下线了,外部接口响应太慢);
C.测试用例执行
1.需要你对接口协议有一定的了解,选择适当的开源工具(如postman)或者自己编写脚本进行模拟请求。
2.需要熟悉接口所使用的中间件等知识(比如redis、kafka、mysql数据库)。
3.需要模拟外部接口返回给你现在正在验证的程序的接口。(比如扣费业务,你不可能每测一个业务,就去调真实扣费)。
是web开发接口吗?建议使用Postman
一、什么是接口?
接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点,定义特定的交互点,然后通过这些交互点来,通过一些特殊的规则也就是协议,来进行数据之间的交互。
二、 常用接口采用方式:
1、webService接口:是走soap协议通过http传输,请求报文和返回报文都是xml格式的,我们在测试的时候都用通过工具才能进行调用,测试。可以使用的工具有apipost、jmeter、loadrunner等;
2、http api接口:是走http协议,通过路径来区分调用的方法,请求报文都是key-value形式的,返回报文一般都是json串,有get和
post等方法,这也是最常用的两种请求方式。可以使用的工具有apipost、jmeter、loadrunner等;
三、前端和后端
前端:网站前端是对网页静态页面的设计,通俗的来说,就是我们肉眼能看的到的东西,当我们浏览网站的时候所看到的页面上的内容几乎都是属于前端,前端的工作就是网站页面,静态的页面是没有后端成分的,前端主要包括html和css外加js等一些样式和布局。
后端: 网站的后端就是动态网站的技术,比如网站上的一些注册登录和一些弹窗,这些都是后端的逻辑,常用的后端语言有php,jsp等,后端的数据库也包含myspl等,都是对后端进行存储数据。
四、 接口测试概念
接口测试是测试系统组件间接口的一种测试。接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等(通俗来说就是,检查业务逻辑是否满足业务需求,校验字段是否正常你实际结果是否满足预期)
五、 接口的组成:
a、接口说明
b、调用url
c、请求方法(getpostput等)
d、请求参数、参数类型、请求参数说明
e、返回参数说明
六、为什么要做接口测试,接口测试的目标
接口其实app和前端交互用的,所以好多人问,为啥做功能测试还要测接口,目标是啥不是多此一举吗?首先我告诉大家,这种想法是错误的
那么举一个例子:
例如一个登陆接口,例如产品上规定用户名6-10个字符数字下划线,但后端没做判断。但我们业务人员测试肯定验证,但只是前端做了校验,后端压根就忘了这个小需求.那么后果来了如果一个懂的直接抓包去篡改你的接口,然后绕过校验,通过sql注入直接随意登录。如果你这是一个下单业务,是不是给公司造成了很大损失
所以此时此刻接口测试目标来了:
1.可能发现客户端没有发现的bug(那么也叫隐藏bug)
2.及早爆出风险(保证质量正常上线)
3.接口稳定了,前端随便改
4.最重要检查系统安全性,稳定性
七、如何进行接口测试
1.使用接口测试工具进行测试,接口测试和接口文档生成工具apipost,接口测试和性能测试工具jmeter
2.接口状态码表示含义
例如:200(成功)/300(重定向别的地方)/400(请求语法错误)/500(服务器异常)
测试点:
A. 用例设计(根据业务逻辑来设计用例,登录5次,需要2分钟后再登录 删除关注的车,列表少一条数据)
B. 参数组合(传入不同值)
C. 接口安全(绕过验证/绕过身份验证/参数是否加密等)
D. 异常验证(输入异常参数边界值)
练
中央厨房的扬弃与完善(上)编者按近些年来,传统媒体在技术平台建设方面大干快上,那么,中央厨房经历了什么样的历史沿革?建设中存在什么样的认识误区?科学的中央厨房应该如何做?编者把在新闻爱好者上的文章分成三篇,
为什么推动四新经济中概股回归A股编者按资本市场的规模快速扩大,能够承载规模越来越大的上市公司内地创业板市场越来越看重成长性,对发展规模和净利润的要求越来越低,也能够更好地支持四新类公司上市。中概股回归能够给公司和
抖音是怎么火起来的?在前有快手秒拍美拍和小咖秀等众多先行者的短视频领域,2016年9月才上线的抖音异军突起,尤其是在尬舞机上线之后很快飙升至AppStore免费榜下载量第一名并保持到现在,高居全球第七
新闻内容付费如何能够实现?新闻内容付费的痛点在于帮助用户节省时间,这就需要基于算法的智能化推荐技术的成熟。当下,将严肃新闻纳入公共文化服务的范畴,由政府采取购买服务的方式来支持内容生产是最为可行的路径。1h
RedmiK305G和realmeX50到底怎么选?看完这篇文章你就知道了最近,许多品牌推出了自己的双模5G手机,那么,现在哪款5G手机更香?RedmiK305G和realmeX50这两款双模5G手机关注度都非常高,同时在价格方面带来了惊喜。这两款手机谁
iPhone12ProMax会是一万元起步吗?会探底会4998吗即使iPhone12ProMax的价格为10000元起,我估计仍然有很多人选择这款手机。因为在这款手机上确实有很多事情要注意,所以最重要的地方应该是5G基带。我们在这款手机中看到的
比特币涨破2。8万美元,市值超0。5万亿美元最受欢迎的加密货币比特币(BTC)加速上涨,不到一天的时间里,分别触及2。5万美元2。6万美元2。7万美元和2。8万美元,而其市值也跃升至0。5万亿美元以上。(UTC时间1143更
愤怒的投资人要求卖掉Telegram来偿还失败的ICO债务据比特范报道,Telegram首次硬币发行(ICO)失败的投资者不满地表示,该聊天应用运营商的创始人PavelDurov应该出售其在公司的股份,以偿还那些落袋为安者的债务。投资者们
巴克莱私人银行比特币几乎是ampamp39不可投资ampamp39根据巴克莱私人银行首席市场策略师GeraldMoser的说法,投资者应该将比特币排除在投资组合之外。虽然预测比特币的预期回报率几乎是不可能的,但从投资组合的角度来看,比特币的波动性
海豚售价9。38万元起欢迎莅临赏鉴纯电新物种海豚正式上市!综合补贴后售价9。38万元12。18万元!海豚是海洋车系的首款车型,也是首款采用海洋美学设计理念的车型,首款基于e平台3。0打造的车型。搭载DiLink3。
海豚售价9。38万元起欢迎莅临赏鉴纯电新物种海豚正式上市!综合补贴后售价9。38万元12。18万元!海豚是海洋车系的首款车型,也是首款采用海洋美学设计理念的车型,首款基于e平台3。0打造的车型。搭载DiLink3。