使用jmeter测试接口
Jmeter写脚本
1、修改jmeter查看结果树乱码问题:
在jmeter\bin目录下找到jmeter.properties文件,找到sampleresult.default.encoding这个之后在该注释行下添加如下:
sampleresult.default.encoding=utf-8
保持该文件,并重启jmeter,就可以解决jmeter返回解决乱码的问题。
2、 jmeter中发送post信息body data中包含中文信息显示乱码,解决body data中文乱码问题:
在jmeter\bin目录下找到jmeter.properties文件,找到jsyntaxtextarea.font.family=Hack这一行之后去掉#号,重启jmeter即可。
3、 在body data中显示的中文正确,但是运行之后在数据库中查看数据却是乱码,需要在请求出添加为utf-8即可。
如下例子是通过jmeter来测试 如下接口文档的内容,
接口文档:
http://doc.nnzhp.cn/
xiaohei 123456
1. 获取学生信息接口
使用jmeter 测试此接口:
1.1 首先定义一个全局变量如下:
1.2 定义参数化数据
1.3 详细定义http请求如下:‘
2 . 登录
使用 postman 来测试这个接口:
这里是为下面的关联作准备:
查看结果树的结果如下:
3. 添加学生信息
使用jmeter 测试这个接口如下:
如下是一串json字符串:
{
"name":"刘欣雨${__time(yyyyMMddHHmmss,9999)}",
"grade":"水瓶座",
"phone":1861234${__Random(1000,9999,)}
}
如下函数的操作方法如下:
最终把第4部分的数据复制出来,粘贴到 json字符串中。
最终运行结果如下:
另外还有一种时间戳${__time(,9999)} 【函数助手里面,开始值可以不写,表示时间戳】
注:时间戳:是指计算机诞生那一天到现在过了多少豪秒。它是一串数字 1526804021458豪秒,除以1000,得到单位为1526804021秒。
因为Jemter里面的时间戳的值是精确到毫秒。
4. 学生金币充值
使用jmetet 测试接口文档如下:
4.1 未使用关联表达式
增加cookie管理器:
4.2 增加cookie管理器,使用 关联表达式
其中这个 ${sign}的值来自上面第 二个 登陆 接口中的值:
5. 获取所有学生信息
使用jmeter 来测试接口:
查看结果树内容如下:
6. 上传文件接口
使用jmeter测试接口 :
6.1
小结:
1. get请求和post请求的区别:
get的请求是放在url里面,
post的请求是放在body里面。
cookie 存放在本地的键值对 key - value
session 存放在服务器的键值对 key - value
2. Jmeter中处理json
我们在做http接口测试的时候,返回的数据都是json串,Jmeter中本身是不支持直接处理json串的,如果要获取到返回结果中指定的值,必须要要通过正则表达式来获取到,正则表达式比较麻烦,写错了就获取不到值了,大家都知道json是key-value这样来存值的,那jmeter里面能不能直接通过key取值呢,这样的话就不用正则表达式那么麻烦了。
如果想要通过key直接取值的话,jmeter官方有一个 json path extractor的插件,装上它就可以直接处理json了,通过key来取值。该插件下载地址为:http://jmeter-plugins.org/wiki/JSONPathExtractor/,下载完之后,把lib文件夹放到jmeter的目录下就ok了。
打开jmeter,这里用的jmeter是3.0版本,新建一个调用接口的http请求,然后添加后置处理器,就可以看到有json path extractor这个插件了,如下图:
1 { 2 "code":200, 3 "info":[ 4 { 5 "age": 18, 6 "id": 7, 7 "sex": "male", 8 "username": "myname" 9 }, 10 { 11 "age": 23, 12 "id": 90, 13 "sex": "female", 14 "username": "yourname" 15 } 16 ] 17 } 18
分析一下这个json串,userid在info这个列表里面存着,取第一个userid,那就要先取到info里面的值,再取info里面的第一个元素,就是用户信息,再取到userid。
json path extractor中使用$代表原来接口的返回值(代表最外层的值),取值如下图:这样就可以直接使用key来取json里面的值了,快去试试吧。
转载于:https://www.cnblogs.com/xhybk/p/9090754.html
使用jmeter测试接口相关推荐
- jmeter测试接口--form表单提交请求(解决请求传参为空的问题)
jmeter测试接口--form表单提交请求(解决请求传参为空的问题) 参考文章: (1)jmeter测试接口--form表单提交请求(解决请求传参为空的问题) (2)https://www.cnbl ...
- jmeter聚个报告怎么看qps_jmeter测试接口qps
1. 如何使用jmeter进行接口测试 服务端系分提供的某接口样例为: 评估后可采用使用jmeter进行压力测试的步骤为: 启动jmeter:在bin下点击jmeter.bat,运行jmeter 2. ...
- jmeter测试webservice接口
webservice怎样使用jmeter测试呢? 测试样例url=http://www.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx ...
- jmeter 测试websocket接口(一)
jmeter 测试websocket接口时,需要对jmeter添加测试websocket的jar包. 下载地址: https://download.csdn.net/download/qq_14913 ...
- Apache JMeter 测试 HTTP接口
一.设置基础组件 1. Apache JMeter 测试 HTTP接口流程 原则:简单的http请求而已,例如:PostMan测试一样的 1.添加一个线程组 2给线程组添加一个取样器,用来发送HTTP ...
- Apache JMeter 测试webservice接口
文章目录 Apache JMeter 测试webservice接口流程 一.设置基础组件 1. 添加一个线程组 2. HTTP信息头管理器 3. HTTP请求 4. 添加一个察看结果树 5. 添加一个 ...
- 使用JMeter测试WebSocket接口
因为我之前对WebSocket接口也不是很了解,所以本篇文章先简单的概括的说明一下WebSocket的相关概念.在文章的后半部分,进行测试WebSocket接口的步骤说明. 1.什么是WebSocke ...
- jmeter进行接口压力测试
最近在做一个tv上的搜索接口,由于处理的时候数据都是通过Xml获取的,获取数据的速度没那么快,并且在TV上一般网速比较慢,搜索接口处理就更慢了,所以每次只能搜固定的条数,保证程序的稳定,最后就要进行压 ...
- 如何使用jmeter测试app端口的md5加密接口
一. 基本介绍 jmeter是一款优秀的开源性能测试工具,目前最新版本4.0版本(jmeter4.0下载地址).jmeter可用于测试接口.数据库测试.本文主要介绍jmeter在接口方面的压力测试. ...
- Jmeter做接口的压力测试
章节一压力测试课程介绍 1.2018年亿级流量压测系列之Jmeter4.0课程介绍和效果演示 简介: 讲解课程安排,使用的Jmeter版本 讲课风格:涉及的组件,操作配置多,不会一次性讲解,会先讲部分 ...
最新文章
- 2018年爱奇艺校招笔试
- adaptiveThreshold 阈值化的实现
- Android之对Volley网络框架的一些理解
- python数学知识_数学知识回顾01
- OpenBFDD的安装与使用
- Android消息处理机制(Handler、Looper、MessageQueue与Message)
- ellipsis省略号表示多余内容
- TypeScript constructor signature 类型的变量赋值方式
- 医动力Android基于CC组件化框架的探索与实践
- 0基础自学Python,有哪些避坑经验?
- FreeMarker 语法
- 2019.08.27BOM的六个子对象(1)
- 腾讯云大数据团队主导Apache社区新一代分布式存储系统Ozone 1.0.0发布
- java程序的开发工具是jdk,分享面经
- POJ 2142 The Balance ★ (不定方程 ax+by=c 的|x|+|y|最小解)
- python实践gcForest模型对鸢尾花数据集iris进行分类
- java captcha 验证码_java生成图片验证码的示例代码
- 直播聊天室源码php,某网络直播聊天室源码 财经直播聊天系统
- thawte代码签名证书,comodo软件签名证书,symantec签名证书,digicert微软签名证书的区别
- Word页面视图下不显示内容但web视图下可以显示的问题
热门文章
- /usr/bin/sed: No such file or directory
- 黑洞内部垂直向上发射光子,会怎样
- Floyd算法 求多源汇最短路
- 二建公路工程知识总结_2020二建公路实务:专题突破+高分攻略,拿分90稳过二建...
- mysql左连接右连接内连接的含义_MySQL-解释左连接,右连接,内连接,全连接
- fpga电平约束有什么作用_FPGA开发全攻略——时序约束
- 多个路由指向同一个页面_ASP.NET实战008:MVC路由实现详解
- python 波浪号用法_「波浪号」matlab中波浪号~的作用和用法 - 金橙教程网
- LINUX的awk和sed的常用用法 正则表达式 grep egrep用法
- 3PHP如何用PDO的连接方式方式导出mysql数据