4-使用Jmeter编写第一个脚本
安装
java编写的开源、免费、接口、自动化、性能测试工具
它的运行环境:jre
我们必须安装jdk才能运行jmeter
查看java版本
1 | java -version |
需要使用的jdk大版本是1.8
官方只在1.8下进行开发和测试,其他jdk版本,可能存在兼容性问题
jmeter版本
使用的是apache-jmeter-5.1.1
链接: https://pan.baidu.com/s/1DxiOyzo8VxFJGrFhJQKPaQ 密码: fws3
切换中文
临时切换中文
永久修改中文
修改jmeter.properties
1 | 第37行 |
使用Jmeter写脚本
写脚本的依赖
- 接口文档
- API文档
- swagger:接口管理平台
- 抓包:F12,Fiddler,Charles,Wireshark,Tcpdump
Jmeter文件夹
bin
- 启动jmeter的所有文件
- properties结尾的文件,都是jmeter的属性配置文件,最主要的是
jmeter.properties
- create-rmi-keystore:创建证书
- jmeter.log:日志打印
docs
开发人员使用的api文档
有java能力相对Jmeter进行二次开发的API文档
extras
持续集成CI/CD使用
lib
jmeter工具的源码二进制jar包
/ext
:使用第三方插件时,把第三方jar放到该目录
printable_docs
jmeter工具,离线
帮助文档
在线、离线文档的差异
离线文档
:当前jmeter版本的帮助文档在线文档
:永远都是最新版本的
jmeter-GUI
菜单
并不包含Jmeter的主要功能,只包含必要的辅助功能
左侧结构树
元件:通过右键添加的 所有可选定的内容,都是元件
测试计划TestPlan:脚本根目录
选中某个元件,从右键中,选择功能
右侧的编辑区
脚本编辑区,不同的元件,内容不一样
元件
- 线程组
性能测试中,进行性能场景设计,在功能测试时,一般不做任何修改
线程组:普通性能场景设计用的线程组,也是用的最多的线程
setUp线程、teardown线程组:和线程组差别不大,一般用作环境准备与清理
- 配置元件
请求内容的头
最大的特点:优先级最高
重点关注:用户定义变量
- 监听器
结果监听与处理
- 定时器
集合点,狭义并发
现在 性能测试一般不再使用
设置思考时间
- 前置处理器
重点关注:用户参数
- 后置处理器
response结果提取
- 断言
测试结果与预期结果进行比较
- 测试片段
管理测试用例
- 非测试元件
设置代理服务器等环境
编写http脚本
- 添加线程组
- 添加取样器:HTTP请求
- 添加HTTP信息头管理器
从文档中:请求头:Content-Type:application/json;charset=utf-8
点击添加
按钮后输入它的请求头
- 编辑HTTP请求
输入协议HTTP
IP:192.168.9.2
端口号:8080
方法:POST
路径:/app/mobile/api/user/register
消息体数据
1 | { |
- 添加 监听器-查看结果树
- 运行
运行的时候它会提示让你先保存
- 查看结果
- 绿色:仅代表网络是通的
- 红色:代表失败,但是具体是什么原因失败,要去分析
注意
1、请求体为json时,一定要加上消息头管理器
2、请求体,写在消息体数据中,是json格式