Web Service和REST(下)
Posted weixin_43802541
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Web Service和REST(下)相关的知识,希望对你有一定的参考价值。
6.3 REST风格项目接口测试
目录:
- 6.3.1 项目准备
- 6.3.2 接口文档
- 6.3.3 编写接口测试用例
6.3.1 项目准备
这里我们会使用另外一个经过REST风格重构的项目:/项目/hello_hzdl_sec_rest
这个项目使用了djangorestframework的REST框架、drf-yasg和swagger_spec_validator生成swagger接口文档,所以运行这个项目需要先安装这三个模块:
在pycharm中,打开项目,在terminal中输入命令,运行系统:
6.3.2 接口文档
REST风格项目的接口文档一般是开发使用相应的Swagger自动生成,例如,python的django项目一般使用drf-yasg。
生成的api文档地址一般是:
项目url/doc/
项目url/redoc/
REST生成的api接口地址一般为:
项目url/api/
项目的接口文档地址
http://127.0.0.1:8000/doc/
或采用redoc风格的接口文档(似乎更美观一些):
项目的api地址
可以通过项目的api接口对Model或者资源进行操作
6.3.3 编写接口测试用例
在原来的测试项目下新建一个python package:case_rest ,将rest风格项目的用例放在此文件夹下,避免和之前的用例冲突
我们以http://127.0.0.1:8000/api/courses/为例,演示REST接口的用例编写
6.3.3.1 导包
导入测试所需的模块
6.3.3.2 前置条件
插入准备数据,设置接口地址
6.3.3.3 编写接口用例
注意系统设置了Basic Auth用户验证,需要使用管理员账号和密码:admin 123456 进行验证,才能连接接口
获取所有课程列表
获取某个课程
增加课程
更新课程
更新课程部分信息
删除某个课程
REST风格的接口测试用例和之前的接口测试用例有一些区别:
接口的URL地址指向的不是函数或方法,而是资源的表现层,或理解为数据
`对资源的操作不是通过调用开发编写的增删改查等函数来操作,而是通过HTTP协议的GET、POST、PUT、DELETE的方法来操作
6.3.3.4 运行用例
可以直接运行用例,或和第4章一样在run.py中进行配置
以上是关于Web Service和REST(下)的主要内容,如果未能解决你的问题,请参考以下文章
WCF Web API WCF REST 和 Web Service 的区别
怎样更好的设计你的REST API之基于REST架构的Web Service设计及REST框架实现
web service, wcf, wcf rest, web api之间的区别