接口测试怎么做

一、接口测试是什么

1.1 什么是接口

接口是程序将自身的内部逻辑封装起来,仅对外提供一个数据出入口。
例如:登录接口、查询个人信息接口

1.2 什么是接口测试

对系统接口进行测试。原理是跳过前端解析渲染的过程,模仿前端直接调用接口进行测试。测试时对入参、响应结果进行验证。

1.3 为什么要做接口测试

互联网产品的菱形测试模型


菱形模型.jpg

菱形模型:轻UI自动化,重接口自动化,部分单元测试覆盖

  • UI测试:模拟真实用户的行为,在软件界面上操作并验证操作的对应结果,也就是常说的“点点点”。
  • API测试:即接口测试。接口是底层代码到UI显示,或者多个服务间进行通信的桥梁。
  • 单元测试:即白盒测试,对方法、类的测试,通常由开发完成。越早发现缺陷,其修复成本就越低。

根据DevOps,在开发过程中,以及代码提交前,应该有两种测试类型,测试驱动开发和单元测试。但在实际紧张的项目过程中,开发和测试都没有时间去测试,底层单元测试无法保障。
同样的,手工测试本身就耗时耗力,但又很难开展UI自动化。因为现在的产品普遍迭代周期短、界面修改频繁,大量修改导致维护成本高,而且脚本编写本身也不容易。
做接口测试,并且重接口测试的优点如下:

  1. API测试用例的开发效率高
  2. API测试用例执行执行稳定
  3. 测试接口的速度快
  4. API接口本身一般改动较少,维护成本低

二、接口测试怎么做

2.1 测试对象

接口测试的对象有三个,分别是:

  • 接口文档
  • 入参数据
  • 响应结果

接口文档
检查接口文档是否符合规范,接口的入参、响应结果是否满足功能需要,依赖接口间是否逻辑自洽。

入参数据
入参测试包括功能测试和异常测试。
对于接口的功能测试,像正常功能测试时一样,按照边界值、等价类等设计方法来设计接口的入参。
对于异常测试,主要指数据异常,例如入参为null,空字符串、错误的数据类型。

响应结果
测试响应结果是否符合相应入参的预期,检查结果格式、编码是否与接口文档一致。

2.2 测试工具

常见测试工具有postman、jmeter,还可以自己搭建测试框架。

2.3 测试流程

  1. 准备入参数据
  2. 调用接口
  3. 验证接口响应结果

三、API测试的场景

3.1 单接口

最简单的测试场景,准备入参-调接口-验证结果。

3.2 接口数据依赖

场景一:接口调用时需要指定header。例如:调用请求时要在header中带上cookie。
场景二:一个接口的入参是另一个接口的返回。例如:调用删除学生的接口时,需要学生id作为参数值。可以调用学生列表接口获取学生id。

解决方法:jmeter,使用json提取器或正则表达式提取器,从上个接口的响应结果中提取需要的值,并配置引用名称。需要用到这个值时通过引用名进行调用。

3.3 接口依赖

接口间存在依赖关系。例如:积分兑换奖励的接口的内部,还会有积分扣减、物品库存扣减、订单生成、购物车物品清除等步骤,通常会通过调用其他内部接口来完成。若其中某一个接口未开发完成,整个流程就无法走通,导致测试阻塞。

解决方法:通过mock,虚拟接口和接口返回。

3.4 异步接口

当接口处理很耗时时,一般会采用异步处理的方式。例如:一键清空历史记录,完全清空需耗时数十分钟。
解决方法:
如果异步接口提供了查询接口,可采取轮询的方式,每隔一段时间去调接口查询处理结果,直到接口返回状态是成功或超时。
如果没有提供接口,可以用同样的方法查询数据库,验证业务逻辑处理是否正确,直到成功或超时。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,084评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,623评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,450评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,322评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,370评论 6 390
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,274评论 1 300
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,126评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,980评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,414评论 1 313
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,599评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,773评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,470评论 5 344
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,080评论 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,713评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,852评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,865评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,689评论 2 354

推荐阅读更多精彩内容