RESTful笔记和Postman调试

RESTful

什么是RESTful

本质:是一种软件架构风格
核心:是面向资源
解决的问题:降低开发的复杂性,提高系统的可伸缩性
设计概念和准则:
网络上的所有事物都可以被抽象成为资源
每个资源都要唯一的资源标识符,对资源的操作不会改变这些标识
所有的操作都是无状态的

SOAP和REST的区别
SOAP

简单对象访问协议(Simple Object Access Protocol),是一种基于 XML 的协议,可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议(HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME),基于“通用”传输协议是 SOAP的一个优点。它还支持从消息系统到远程过程调用(Remote Procedure Call,RPC)等大量的应用程序。随着SOAP作为WebService的广泛应用,不断地增加附加的内容,使得现在开发人员觉得SOAP很重,使用门槛很高,而且随着需求的增长,又不得增加协议以支持安全性,这使SOAP变得异常庞大,背离了简单的初衷。

REST

REST是一种轻量级的Web Service架构风格,其实现和操作比SOAP和XML-RPC更为简洁,可以完全通过HTTP协议实现,还可以利用缓存Cache来提高响应速度,性能、效率和易用性上都优于SOAP协议。REST架构对资源的操作包括获取、创建、修改和删除资源的操作正好对应HTTP协议提供的GET、POST、PUT和DELETE方法,这种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。

在安全性方面,SOAP的成熟性可以给需要提供多开发语言的,对于安全性要求较高的接口带来便利,RESTful风格对于资源型服务接口来说很合适,同时特别适合对于效率要求很高,但是对于安全要求不高的场景

如何设计RESTFul风格API

GET:从服务器获取资源(一项或多项)
POST:在服务器新建一个资源
PUT:在服务器更新资源(客户端提供改变后的完整资源)
PATCH:在服务器更新资源(客户端提供改变的属性)
DELETE:从服务器删除资源
例:

  • GET /zoos:列出所有动物园
  • GET /zoos:列出所有动物园
  • POST /zoos:新建一个动物园
  • GET /zoos/ID:获取某个指定动物园的信息
  • PUT /zoos/ID:更新某个指定动物园的信息(提供该动物园的全部信息
  • DELETE /zoos/ID:删除某个动物园
  • GET /zoos/ID/animals:列出某个指定动物园的所有动物
  • DELETE /zoos/ID/animals/ID:删除某个指定动物园的指定动物
REST风格的接口测试流程

在这里插入图片描述

编写功能测试计划

一、需求描述
GET: http://localhost:8080/MyWebsite/user/
Header: Content-Type = application/json
Body: 空
Response: 返回所有User对象
Status code: 200

GET: http://localhost:8080/MyWebsite/user/{id}
Header: Content-Type = application/json
Body: 空
Response: 返回指定id的User对象
Status code: 200

POST: http://localhost:8080/MyWebsite/user
Header: Content-Type = application/json
Body: name(String类型,不为空不可重复),age(int类型,在0~100),salary(double类型)
Response: 新加User对象
Status code: 201

PUT: http://localhost:8080/MyWebsite/user/{id}
Header: Content-Type = application/json
Body: name(String类型,不为空不可重复),age(int类型,在0~100),salary(double类型)
Response: 修改User对象
Status code: 200

DELETE: http://localhost:8080/MyWebsite/user/{id}
Header: Content-Type = application/json
Body: 空
Response: 删除id的User对象
Status code: 204

DELETE: http://localhost:8080/MyWebsite/user
Header: Content-Type = application/json
Body: 空
Response: 删除所有的User对象
Status code: 204

错误返回:
Code : 4 Message : 找不到指定id对象
Code : 5 Message : 对象已经存在
Code : 6 Message : 参数不匹配

二、测试计划
业务流程- GET :
正向用例: 返回所有对象和返回某一个对象
负向用例: 一个不存在的id、URL输入不正确

业务流程- POST :
正向用例: 输入正确参数新加一个对象(特殊字符,中文等)
负向用例: 参数name为空/重复、参数age为0/-1/100/101/字符串/null/空、参数age为0/-1/100/101/字符串/null/空

业务流程- PUT :
正向用例:输入正确参数修改一个对象(特殊字符,中文等)
负向用例:参数id为空/无效值、参数name为空/重复、参数age为0/-1/100/101/字符串/null/空、参数salary为整数/带小数/负数/null/空

如何使用Postman验证测试用例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值