接口自动化一

1、移动端接口协议

1.1 移动端经常使用的接口协议

Http 协议。java

目前大部分移动端与服务端之间都是经过 HTTP 协议进行数据交互的。数据库

4种操做方法。浏览器

Http 的 Get、Post、Put、Delete 方法服务器

1.2 Http 协议的组成

Http 协议是一个应用层的协议,是一种网络交互须要遵照的一种协议规范。网络

  • Http协议组成session

    • 请求(Request)
    • 响应(Response)
    • 以及相应的信息头(Request Header 和 Response Header)。
  • Http传输数据结构

    • 在 Http 传输中,咱们都是 经过 URL 来寻找网络资源的。
  • Http URL 格式:http://host:port]path][框架

    • http 表示要经过 HTTP 协议来定位网络资源;
    • host 表示合法的 Internet 主机域名或IP地址;
    • port 用于指定一个端口号,若是为空,则使用缺省的端口 80;
    • path 指定请求资源的具体地址。

1.3 Http 请求过程

1.3.1 Http 请求格式

向服务器发出请求时,它向服务器传递了一个数据块,也就是请求信息,由3部分组成:socket

  • 请求方法、URI 协议、版本;工具

  • 请求头(Request Header);

  • 请求参数。

以下截图所示:

 



其中:

URI:纯粹是一个符号结构,用于指定构成Web资源的字符串的各个不一样部分。
URL:是一种特殊类型的URI,它包含了用于查找某个资源的足够的信息。
Cookies:能够理解为客户端保存信息的一种机制,用于记录一些信息,也是实现session的一种方式。
Session:能够理解为在服务端保存一个数据结构,能够用于某些状态或属性。

 

1.3.2 Http 响应格式

接收到服务器响应信息也由3个部分构成,分别是:

  • 协议版本、状态码、 描述(HTTP/1.一、 200、OK);
  • 响应头(Response Header);
  • 响应正文。
     

其中,常见状态代码、状态描述:
200 OK:客户端请求成功。
400 Bad Request:客户端请求有语法错误,不能被服务器所理解。 
403 Forbidden:服务器收到请求,可是拒绝提供服务。
404 Not Found:请求资源不存在。
500 Internal Server Error:服务器发生不可预期的错误。

1.3.3 Http 请求过程

一、链接:创建一个 socket 链接;

由于 socket 是经过 ip 和端口创建的,在这以前还会进行 DNS 解析将域名解析成对应的 ID 地址。

二、请求:链接成功后,向服务器发送 GET/POST 请求。

  • GET, 通常用于获取信息。请求数据会放置在 HTTP 协议头中,以 ? 分割 URL 和传输数据,多个数据以 & 相连。参数受限于 URL 长度,不一样浏览器有不一样的长度限制。

  • POST,通常用于向服务器提交数据,以 FORM 表单的形式。没有大小限制。

  • GET 参数经过 URL 传递,POST放在Request body中。

三、响应:服务器收到这个请求,进行处理,再将响应数据传送回客户端。

四、关闭链接:响应结束后,客户端与服务器断开链接,以保证其它客户端与服务器创建链接。

Tips:99%的人都理解错了HTTP中GET与POST的区别

2、接口测试

2.1 接口测试主要关注点

  • 业务逻辑

全业务逻辑覆盖

  • 响应结构

  • 数据格式

  • 数据正确性

    依据数据来源:查数据库或服务端和接口返回值作比较

2.2 用例设计—参数要考虑的

  • 请求参数必选或选填

例:参数缺失服务端是否正常解析

  • 输入合法、非法参数

例:服务端只接收 int 类型,传递了 String 类型

  • 请求参数边界值

例:存储长度10位,传参大于10位,接口是否处理

  • 请求参数逻辑分支

例:type=1 查询北京、Type=2查询天津

  • 与服务端是否存在附加协议

例:交互过程当中服务端须要验证 head 中的数据、或者是否有加密协议

2.3 用例设计—结果要验证的

  • 异常请求处理
  • 请求头协议
  • 响应结构
  • 全部value值的正确性、有效性
  • 数据库交互是否生效
  • 列表排序
  • 分页属性
  • 存在业务关联的是否生效

2.4 用例的管理与维护

  • 功能测试模式:为了更快速会选用EXCEL、思惟导图进行用例管理。
  • 自动化测试模式:使用测试脚本进行管理。

2.5 测试工具及框架

  • 工具:

Fiddeler、Charles、Postman、 Json-handle插件、 Json.cn、 ......

 

  • 框架:

Soapui、Robot framework、Httpclient、Rest assured、Swagger......

相关文章
相关标签/搜索