Jmeter

您所在的位置:网站首页 roadrunner和jmeter的区别 Jmeter

Jmeter

2023-03-12 08:37| 来源: 网络整理| 查看: 265

1 入门 1.1 JMeter简介 概念 可以对服务器、网络或对象模拟巨大的负载通过创建带有断言的脚本来验证程序是否能够返回期望的结果

优点

缺点

不支持IP欺骗无法前端的JS程序,无法验证UI界面,一般用来测试接口 1.2 JMeter安装

下载解压

设置中文乱码

去jmeter的properties中设置下 在这里插入图片描述

启动

bin下的bat文件启动

在这里插入图片描述

在这里插入图片描述

1.3 项目简介 restful语法功能

在这里插入图片描述

1.4 环境搭建

JDK和Python

2 JMeter使用 2.1 基本使用 先保存

在这里插入图片描述

添加 右击添加线程组

在这里插入图片描述

添加取样器 在这里插入图片描述 更名

名称可以随便改

在这里插入图片描述

填写

在这里插入图片描述

在这里插入图片描述

查看结果

在测试结果获取所有中右击添加监听器:查看结果树

在这里插入图片描述

执行

在这里插入图片描述

查看

换个形式看

在这里插入图片描述

在这里插入图片描述

2.2 线程组相关 概念

一个进程可以包含多个线程组,一个线程组可以包含多个线程

新建线程组

在这里插入图片描述

新建线程:http请求

在这里插入图片描述

再加一个:http请求

或者直接再点击线程组后,ctrl+c,ctrl+v

在这里插入图片描述

反复

再新建一个线程组,里面再加两个http请求

线程组也可以cv,不过也要点击进程那边再进行

成这样

在这里插入图片描述

2.3 并发执行和顺序执行 概念 并发执行:多个线程同时执行顺序执行:多个线程顺序执行 新建线程组以及线程新建查看结果树运行

不按照顺序,就是并发执行 在这里插入图片描述

顺序执行

在进程里面:独立运行每个线程组 打勾即可

在这里插入图片描述

再去运行就可以了

在这里插入图片描述

2.4 两个特殊线程组 分类 setUp线程组

最优先执行的线程组

类比军人

tearDown线程组

最后执行的线程组

类比难忘今宵

操作

添加线程和线程组,以及察看结果树

在这里插入图片描述

执行

在这里插入图片描述

三个线程组执行

注意结果顺序 1,3,2

在这里插入图片描述

2.5 线程组常用属性 总览 在这里插入图片描述 线程数:模拟用户数ramp-up时间:程序准备时间循环次数:相当于线程数执行几遍,即每个用户请求几次

如果线程数为2,循环次数为3,那么察看结果树就会返回6个请求

在这里插入图片描述

如果循环次数选择永远,好家伙直接一直请求

调度器配置

勾选调度器后,才可以进行持续时间和启动延迟的设置,如果持续时间选择2秒,就是只会勾选执行2秒钟

2.6 http请求默认值 设置 在这里插入图片描述

在这里插入图片描述

如果多个 在这里插入图片描述

出现的情况是:如果复制粘贴多个,那么设置都一个样子,浪费设置

简化

右击进程,选择http请求默认值

在这里插入图片描述

然后在里面设置重复的属性

在这里插入图片描述

然后其他的http就不用写这些了,复用的已经进行封装了

在这里插入图片描述

2.7 信息头管理器 http设置 基本设置

在这里插入图片描述

消息体设置

在这里插入图片描述

但是报错,不知道你传入的是什么类型,所以要去设置HTTP信息头管理器

HTTP信息头管理器添加位置 右击进程添加

在这里插入图片描述

添加json类型

在这里插入图片描述

重新执行

就能识别json了

在这里插入图片描述

2.8 参数化 场景

一个一个请求提交太慢了

2.8.1 用户定义变量 设置位置

在这里插入图片描述

在这里插入图片描述

设置变量对应内容

在这里插入图片描述

调用

返回http请求然后路径写${xx}变量即可 在这里插入图片描述

看下结果

在这里插入图片描述

在这里插入图片描述

2.8.2 CSV数据文件设置 作用

可是实现批量操作形式

步骤

在这里插入图片描述

前置设置

设置线程组以及HTTP请求(POST形式)以及察看结果树以及HTTP信息头管理器(为了识别json数据)

批量添加

目的:把数据批量添加到数据库

数据

在这里插入图片描述

批量设置

在这里插入图片描述

在这里插入图片描述

在线程组钟将循环次数设置为永远

因为可能不知道数据有几条,如果你知道有几条,那就写几

在这里插入图片描述

2.8.3 用户参数实现批量添加 总览

与csv方式的对比是不用csv文件也可以实现批量添加,一般工作用csv,这边用用户参数

设置 添加用户参数

在这里插入图片描述

用户参数内容

在这里插入图片描述

线程组设置

设置3个用户试试看,循环次数不弄了 在这里插入图片描述

传参json变量要进行替换

在这里插入图片描述

执行 数据加进去了 在这里插入图片描述 2.8.4 函数 计数函数count 效果

请求的结果后面自带个数

操作

在这里插入图片描述

拷贝走代码${_counter(true,)}

在这里插入图片描述

放到Http请求最后面

在这里插入图片描述

执行

变成每个用户自己请求次数自己计算了,如果选flase就是1-6,不管哪一个用户

在这里插入图片描述

随机函数Random 操作

把前面的禁用掉

在这里插入图片描述

一样的地方

在这里插入图片描述

设置random,1-3闭区间

在这里插入图片描述

结果

在这里插入图片描述

时间函数time 操作

当前时间戳

在这里插入图片描述

自己设置的格式

在这里插入图片描述

2.9 直连数据库 添加jar包

在这里插入图片描述

操作 添加JDBC的Request

在这里插入图片描述

添加数据库连接池

在这里插入图片描述

填入数据库的信息 在这里插入图片描述

回到JDBC的Request写sql

在这里插入图片描述

执行

按下绿色按钮

然后看下结果

在这里插入图片描述

结果在百度搜索 增加一个返回的变量

在这里插入图片描述

select的结果

发现都加上了val前缀

在这里插入图片描述

请求百度

在这里插入图片描述

看下结果 看下怎么请求的

在这里插入图片描述

看下response的结果

在这里插入图片描述

2.10 断言 概念

让程序代替人工判断响应结果是否符合预期

在这里插入图片描述

响应断言 添加

在这里插入图片描述

断言设置

常用响应文本和响应代码,设置筛选老张

在这里插入图片描述

结果

如果包含老张了,你执行的时候就不会报错

在这里插入图片描述

如果没有就报错,像这样

还有其他规则,相等就是要一模一样,一般常用相等和包含,否就是取非

甚至也可以测响应码

在这里插入图片描述

在这里插入图片描述

大小断言 总览

在这里插入图片描述

大小对应的就是

在这里插入图片描述

响应代码

是大小,不是200的字符,所以写3个字符

在这里插入图片描述

响应消息

对应message的ok

在这里插入图片描述

但是来这边只能写2字符表示ok

在这里插入图片描述

断言持续时间

表示是不是在5ms以内

在这里插入图片描述

3 性能测试 3.1 高并发 前置准备 HTTP请求

在这里插入图片描述

添加同步定时器

在这里插入图片描述

设置下线程组

模拟一百人

在这里插入图片描述

同步定时器设置 设置用户组数量

如果一百人分两次访问服务器,这边就写五十,类比公交车上的位置够不够

在这里插入图片描述

设置超时时间

不要写零,写零的话后面剩下的不够数量会出现超等

在这里插入图片描述

结果

不要用察看结果树了,用聚合报告,看平均值,异常情况,吞吐量

在这里插入图片描述

在这里插入图片描述

3.1 高频率 场景

在这里插入图片描述

QPS每秒钟二十次

添加请求/聚合报告

在这里插入图片描述

在这里插入图片描述

添加常数吞吐量定时器

在这里插入图片描述

在这里插入图片描述

线程组设置

二十x十五

在这里插入图片描述

执行

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3