【转】JMeter学习(三十五)使用jmeter来发送json/gzip格式数据
一、使用jmeter来发送gzip数据
有时候我们需要模拟在客户端将数据压缩后, 发送(post)到服务器端. 通常这种情况,会发生在移动终端上. 这样做的好处, 是可以节省流量. 当然, 服务器返回的数据也可以是gzip格式, 终端在数据展现时,需要先解压缩. 同样也是为了节省网络流量.
1. 首先我们把要post的数据, 保存在文本文件里,然后gzip压缩. (可以使用Linux中的gzip命令)
2. 在jmeter的http sample里, 使用"同时发送文件数据"的方式,选中gzip压缩后的文件, 并将mime类型,选择gzip.
3. 添加一个http header manager, 并加入如下头参数.
content-type:x-application/x-gzip
content-encoding:gzip
4. 如果需要允许服务器返回gzip格式的内容,则需要添加http header , accept-encoding:gzip .
二、使用jmeter来发送json格式数据
1. header-manager 修改content-type值。
如果不修改该值, 则默认会是urlencode的数据格式(例如a=5&b=6)。
修改为json后,会告诉服务器,发送的数据为application/json格式数据。防止服务器对数据类型做强制校验。
2. 添加一个http request 请求sample, 这样根据图实例进行配置,便可以轻松的实现发送json格式的数据。
其实还是用的post 方式发送参数, 只是参数的名称为空, value值是你要post的json字符串。
ps: 较新版本中的jmeter的http sampler(http请求采样器)已经有一个post body的标签, 可以直接填写post body值即可. 例如下面的这张图. 其实他和第二步中的设置内容是一致的.