目录
一、简介和分类
接口测试是测试系统组件接口之间的测试。
分类:
测试外部接口:测试被测系统和外部系统之间的接口。(只需要测试正例即可)。
测试内部接口:
- 内部接口只提供给内部系统使用。(例如保险公司,预算系统,承保系统)(只需要测试正例即可)。
- 内部接口提供给外部系统使用。(测试必须非常全面,正例,各种异常场景,权限控制)
二、接口测试的流程以及用例的设计思路
1. 拿到接口API文档(通过抓包工具获取),熟悉接口业务,接口地址,鉴权方式,入参,出参,错误码。
接口API文档如下图:

2. 编写接口用例以及评审。
思路:
- 正例:输入正常入参,接口能够成功返回数据。
- 反例:
- 鉴权反例:
- 鉴权码为空,鉴权码错误,鉴权码过期,......
- 参数反例:
- 参数为空,参数类型异常,参数长度异常。
- 错误码覆盖:
- 根据业务而定。
- 其他错误场景:
- 接口黑名单,接口调用次数限制,分页场景。
- 鉴权反例:
参考如下接口用例文档截图:

3. 使用接口测试工具Postman执行接口测试。
4. Postman+Newman+Jenkins实现持续集成,并且输出测试报告,发送邮件。
三、Postman的简介、安装
Postman客户端安装
官网地址下载即可
免费注册和登录Postman SaaS云服务

Postman界面简要介绍
- Home
- Workspaces 工作空间
- Collections - 集合,项目集合
- API - API文档
- Environments - 环境变量,全局变量
- Mock Server - 模拟服务器,虚拟服务器
- Monitor - 监听服务
- History - 请求历史记录
创建项目名称与API请求 - Get
参照上面API文档描述:
- 请求方式:Get
- 请求URL:
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
- 创建Collection
- 创建请求
- 复制URL到Postman

Postman执行接口测试
请求页面
- Params: get请求传递参数
- Authorization: 鉴权
- headers: 请求头
- Body: post请求传递参数
- none: 没有参数
- form-data: 既可以传键值对也可以传文件。
- x-www-form-urlencoded: 只能够传键值对参数
- raw: 可传json, text, xml, html, javascript类型参数
- binary: 二进制文件
- pre-request-script: 请求之前的脚本。
- tests: 请求之后的断言。对测试接口的判断。
- Setting: 对当前请求做设置。
- Cookies: 用于管理cookie信息。
执行接口GET测试

1. 输入appid与secret信息,可以复制下方信息:
appid: wx6b11b3efd1cdc290
secret: 106a9c6157c4db5f6029918738f9529d
2. 点击Send
3. 查看返回结果,成功获得access_token,符合API文档中的返回结果描述。

响应页面
- Body: 接口返回的数据。
- Pretty: 以json, html, xml 等不同的格式查看返回的数据。
- Raw: 以文本方式查看返回数据。
- Preview: 以网页方式查看返回数据。
- Cookies: 响应的Cookie信息。
- Headers: 响应头
- Test Results: 断言结果。
- 其他如下图,200状态码, OK状态信息,253ms接口响应时间, 343B响应字节数

创建API请求 - POST
参考API文档示例如下,请求方式为:POST

在Postman中同一个collection下面创建一个新的请求,然后修改请求方式为POST,填写请求URL。如下图:
请求方式: POST
请求URL: https://api.weixin.qq.com/cgi-bin/tags/create?access_token=ACCESS_TOKEN

本项POST测试需要上一个get测试的响应结果access_token,将引号内的access_token复制到VALUE中。
然后点击Body标签,如下图填入上传参数。{“tag”:{"name":"刘磊"}}

点击Send按钮即可。查看返回结果。如API文档中示例:

Get请求与Post请求的区别
- Get请求一般是获取数据。Post请求一般是提交数据。
- Post请求比Get请求安全。
- 本质区别是传参的方式不一样:
- Get请求在地址栏后面以?的方式传参,多个参数用&分隔。
- Post请求是在Body里以表单的方式传参。
附免费的API接口,玩玩:阿里云上有一些免费API,并且整合了一些小的数据服务公司。

本文详细介绍了接口测试的概念、分类以及Postman的使用,包括Postman的安装、创建项目、执行GET和POST请求,以及接口测试用例设计思路。通过Postman执行接口测试,演示了GET和POST请求的区别,并提供了接口测试的实战步骤。
4816

被折叠的 条评论
为什么被折叠?



