jmeter脚本,测试并发,一般执行10-15分钟

2.1 汉化

Options->Choose Language >Chinese

2.2 测试计划/TestPlan

用户自定义变量:

这里设置的变量,是全局变量。整个测试计划都可以引用这个变量。

设置变量name=张三

二、 jmeter的基本使用_jar包

 引用name变量

${name}

独立运行线程组:

二、 jmeter的基本使用_配置文件_02

如下图,一个测试计划下有多个线程组时

二、 jmeter的基本使用_jar包_03

 如果不勾选独立运行线程组,则启动脚本时,线程组1与线程组2是同时运行的 

勾选独立运行线程组,则启动脚本后,先执行线程组1,当线程组1执行完成后才执行线程组2.

应用场景:

比如晚上下了班,需要依次执行多个线程组,这个时候我们就可以设置独立运行线程组,这样第二天来了,就可以直接看运行结果了。

添加目录或jar包到ClassPath

二、 jmeter的基本使用_jar包_04

 需要添加第三方jar包情况下,如在跑某些脚本时,依赖额外的一些jar包,就在这里面添加。

也可以把依赖的jar包直接放在jmeter文件的lib目录ext文件夹下面。

二、 jmeter的基本使用_jar包_05

2.3线程组

添加线程组

二、 jmeter的基本使用_jmeter_06

线程属性

二、 jmeter的基本使用_jmeter_07

 线程组设置并发数量和并发多长时间。

jmeter是用java程序写的,所以用线程数来表示并发数量。java是单进程多线程。

线程数就是并发数。

进程与线程关系:

进程是程序运行的基本单元,但不是最小单元。线程是程序运行的最小单元,进程里面有线程。

单进程:

一个进程下面,只有一个线程。

多线程:

一个进程下面,有多个线程。

运行速度来说,进程比线程快(因为一个进程下面只有一个线程),但是多线程的优点就是支持更大并发。

Ramp-Up时间(秒):

设置线程数10,Ramp为1秒。表示1秒内启动完这10个线程。

二、 jmeter的基本使用_线程组_08

 如上图,我们设置一个很大的线程数,如要求10s内启动10000个线程。

这个是很明显10s不能启动完成10000个线程的,它只是尽量10s内启动完10000个线程。当在规定时间内完不成时,他会加班启动,如我设置了10s10000个,它实际执行时,可能用了100s启动了10000个。

循环次数:

针对每个线程,设置循环次数为9次时,则每个线程会循环执行9次。

设置为永远,则每个线程会循环跑下去。

调度器:

二、 jmeter的基本使用_线程组_09

 调度器必须配合循环次数为永远时使用的。

持续时间:

设置持续600(秒),表示这个线程组持续执行600s

启动延迟:

二、 jmeter的基本使用_jar包_10

 如图,设置启动延迟为10。启动脚本后,在10s内不启动线程,10s过后,再在1s内启动完50个线程。

启动延迟没有太大的意义。

在取样器错误后要执行的动作

二、 jmeter的基本使用_配置文件_11

继续:

在请求出错之后,继续执行

启动下一进程循环:

在请求出错之后,不会继续执行后面的请求。而是重新发起一个循环,再从头开始执行

停止线程:

在请求出错之后,把这个线程停止掉

停止测试:

在请求出错之后,把这个线程组下的所有线程都停止掉。(正在执行的线程,执行完停止掉,未执行的线程,直接就不执行了)

立即停止测试:

立即停止在整执行的线程和停止未执行的线程。

2.4取样器

HTTP取样器/请求

二、 jmeter的基本使用_线程组_12

 协议不填,默认http

端口不填,默认80端口

http协议,对应80端口

https协议,对应443端口。

服务器名称或ip:

这里可以填写域名或者ip地址。

内容编码:

二、 jmeter的基本使用_配置文件_13

字符的编码, 只针对我们请求参数(request)的编码,默认是ISO8859。

编码的配置,是在配置文件里配置的。jmeter的配置文件为bin目录下的jmeter.properties文件。

我电脑下的路径:

资源库下

/Library/apache-jmeter-5.4.3/bin/jmeter.properties

我们查看jmeter.properties文件。

二、 jmeter的基本使用_线程组_14

 发现这个文件里,有大量的注释内容。这些被注释的内容,都是这个jmeter的默认配置文件。

#language=en

这个jemter的默认语言是English。如果我们想要修改默认配置要怎么做?

如我们想讲默认语言换成中文,

则第一步放开注释

第二步,将en换成zh_CN

#language=en

变成

#language=zh_CN

回到我们讲解的默认编码

二、 jmeter的基本使用_jmeter_15

# The encoding to be used if none is provided (default ISO-8859-1)
#sampleresult.default.encoding=ISO-8859-1

第一行默认编码,是针对请求传参的默认编码,

第二行#sampleresult.default.encoding=ISO-8859-1,是针对请求返回值的默认编码。

当我们想更改请求参数的编码时,直接在jmeter的界面上更改就可以了。

二、 jmeter的基本使用_jmeter_16

但是当我们想更改返回值的编码时,我们要去配置文件。

首先要放开注释 

sampleresult.default.encoding=ISO-8859-1

然后将 ISO-8859-1 替换成UTF-8

什么情况下需要更改编码?

我们查看结果树,当查看某个请求的传参,发现某个字符乱码时,我们可以设置请求参数的字符编码。

当我们查看结果树,查看某个请求的返回值,乱码时,我们可以更改返回值的编码。

相关文章:

​一、jmeter non gui 模式启动_傲娇的喵酱的博客-​