接口测试是测试系统组件间接口 的一种测试
接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点
测试的重点是要检查数据的交换,传递和控制管理过程 ,以及系统间的相互逻辑依赖关系
文章目录
-
- [HTTP接口 & Web Service接口](#HTTP接口 & Web Service接口)
- RESTful接口规范
- [案例 【黑马】](#案例 【黑马】)
- Postman
- 登录接口测试
HTTP接口 & Web Service接口
接口类型 | HTTP接口 | Web Service接口 |
---|---|---|
协议 | HTTP协议 | Soap协议 |
请求报文 | key-value | xml |
返回报文 | json | xml |
请求方法 | get/post | soap协议包装的内容 |
接口工具 | Postman/RESTClient/jemter | SoapUI/jmeter |
处理效率 | 处理数据毕竟简单,效率较高 | 能处理较复杂的数据类型,速率较慢 |
使用场景 | 当你调用一个本服务的内容的时候,不涉及跨域的问题,使用httpService的方法 | 如果你需要在后台调用一个其他应用的服务,这个时候,就要用webService的方式来调用 |
RESTful接口规范
请求API的URL用来定位资源
通过标准HTTP方法对资源进行增删改查操作
利用HTTP状态码返回状态信息
传统风格 & RESTful
案例 【黑马】
根据流程图找出业务路径:
设计测试用例:
Postman
1.发送请求并查看响应结果
- 设置请求方法
- 设置url
- 设置请求头
- 设置请求数据
- 点击send发送请求
2.自动关联
js
# 验证码接口 代码写在【Tests】内
var jsonData = pm.response.json();
pm.environment.set("var_name", value);
其他功能自己摸索,很简单的
断言
三种方式
bash
# 断言响应状态码为200
pm.test("断言响应状态码为200",function(){
pm.response.to.hava.status(200);
})
# 断言响应数据中包含'成功'
pm.test("断言响应数据中包含'成功'",function(){
pm.expect(pm.response.text().to.include('成功'));
})
# 断言json数据中msg值为'操作成功'
pm.test("断言json数据中msg值为'操作成功'",function(){
var jsonData = pm.response.json();
pm.expect(jsonData.msg).to.eql('操作成功');
})
登录接口测试
测试点
测试用例
执行测试用例
利用postman工具
其他测试点提取
1、课程添加
2、课程列表查询
3、课程修改
4、课程删除