本文主要讲知识点,具体项目实践:

(网址)

日常接口测试过程中常听到“信息头”、“响应数据”、“接口入参”等专业名词,那么这些名词是什么意思呢,本文主要结合jmeter的HTTP Header Manager来讲解常用的信息头是什么意思,如何使用。

1

接口分析-POST

本文以POST方式的接口请求为例,通过charles查看接口的相关信息头和信息体数据。


接口的Request

  • Request-Headers(信息头)

    content-type:设置请求体的MIME类型(适用POST和PUT请求),告诉客户端实际返回的内容的内容类型,常用application/json;charset=UTF-8,定义接口响应返回的数据是json格式,编码格式是UTF-8

    user-Agent用户代理的字符串值,一般用于告诉服务器客户端使用的操作系统/浏览器的名称和版本等信息

  • Request-data(请求体)

 接口的请求体,就是接口的入参数据,本文接口入参刚好是json格式的,所以可在charles的jsontext标签内看到格式化后的接口请求入参

现有请求请求头追加信息Java 设置请求头的数据_现有请求请求头追加信息Java


接口的Response

  • Response-Headers(信息头)

        登录接口,那就需要关注response-headers数据,会存储结果返回的登录信息,用于其他接口调用保持登录状态,其他类型的接口一般不用关注

       Set-Cookie:设置HTTP Cookie,用来存储一些用户信息以便让服务器辨别用户身份的,一般是服务端返回的用户身份信息(大多数需要登录的接口上面会比较常见)

       Cookie:Cookie是远程服务端返回的识别用户身份信息,该信息存储在客户端,客户端每次进行操作时,会通过HTTP协议和服务器端进行Cookie的交互,验证身份信息正确才可交互成功(大多数需要登录后操作的接口上面会比较常见)。

两者关系:

Set-Cookie和Cookie的关系:登录接口的response-headers里面的Set-Cookie值,用于下一个需要保持登录的接口的request-headers的cookie

现有请求请求头追加信息Java 设置请求头的数据_现有请求请求头追加信息Java_02

  • Response-body(响应体)

普通的接口的响应数据一般不会关注header数据,只要关注响应体的数据就好

现有请求请求头追加信息Java 设置请求头的数据_现有请求请求头追加信息Java_03

2

Jmeter-信息头管理器

菜单路径


现有请求请求头追加信息Java 设置请求头的数据_现有请求请求头追加信息Java_04

配置


    接口开发要求需要定义数据的格式和编码方式,可从抓包工具charles上可获取到接口需要定义:Content-Type:application/json;charset=UTF-8

  • Content-Type:application/json,响应数据为json格式
  • charset=UTF-8,编码方式为UTF-8

部分需要统计用户使用的设备属性,就需要定义user-agent信息

现有请求请求头追加信息Java 设置请求头的数据_现有请求请求头追加信息Java_05

注意:

Request-headers若是需要Cookie信息,此时cookie无需在信息头管理器内定义,后续会有cookie管理器用来专门定义cookie内容