REST API 接口测试
一、介绍
1.Rest和Restful的区别
重申接口测试的好处:
1.很多系统关联都是基于接口来实现,接口测试可以将复杂的系统关联进行简化
2.接口功能比较单一,能够比较好的进行测试覆盖,也相对容易实现自动化持续集成
3.接口相对于界面功能,会更底层一些,测试覆盖会更加容易。
接口测试含义
soap&rest概念
SOAP:simple object access protocol
交换数据一种协议规范,是一种轻量的、简单的、基于XML的协议。
REST:representational state transfer
一种软件架构风格,可以降低开发的复杂性,提高系统的可伸缩性。
SOAP于REST区别:
安全性:soap好于rest
效率和易用性:rest更胜一筹
成熟度:总的来说soap在成熟度上优于rest
rest api
REST API
REST API特点总结:
1.面向资源的接口设计
2.抽象操作为CRUD
3.Http是应用协议而非传输协议
rest支持的方法
二、RestApI接口测试
1.RestApi介绍
接口规范1
接口规范2
接口规范3
常见http statuscode状态码
返回结果设计
接口实例
2.接口测试流程
1.了解接口格式(url、输入项的类型、可选项、必选项、返回结果的格式等)
2.编写测试用例
3.测试用例评审
4.开始测试
5.完成测试报告
三、Postman工具
1.postman工具详细介绍和操作
postman功能介绍
Http Header
content-type
区别: app../ded:浏览器都支持,在请求发送过程中,对数据进行序列化处理。
app../json:json规范流行,前端人员不需要关心数据结构的复杂性。
四、测试实例
1.Rest Api需求+测试计划+实例
需求1
测试计划的思路:业务流程--get
正向用例:返回所有对象和返回某一个对象
负向用例:一个不存在的id
url输入不正确
get实例图示(填写header。也可以写断言,加入判断,进行返回结果的验证)
get实例图示
需求2
get实例图示2
需求3(201代表新建成功)
测试计划的思路:业务流程--post
正向用例:输入正确参数新加一个对象(特殊字符、中文等)
负向用例:参数name为空/重复
参数age为0/-1/100/101/字符串/null/空
参数salary为整数/带小数/负数/null/空
post实例图(正向用例)
post实例图(负向用例)
post示例图(负向用例结果图示)
需求4
测试计划的思路:业务流程--put
正向用例:输入正确参数修改一个对象(特殊字符、中文等)
负向用例:参数id为空/无效值
参数name为空/重复
参数age为0/-1/100/101/字符串/null/空
参数salary为整数/带小数/负数/null/空
put示例图(正向用例)
可以用get方法进行查询,是否正常
put实例图(反向用例)
put实例图(反向用例结果说明开发没有对类做正确的限制)
需求5
需求6
测试计划的思路:业务流程--Delete
正向用例:删除所有对象和删除某一个对象
负向用例:一个不存在的id
url输入不正确
delete示例图(正向用例)
delete示例图(反向用例,一个不存在的id)