Jmeter是一款轻量型的优秀测试软件产品,在很多场合如个人测试,企业测试中都有广泛应用。相比体积巨大的我们在某些场合可能更倾向于对Jmeter的使用,那么我们要如何利用该软件进行性能测试呢?
我们需要下载安装这款全免费的测试软件Jmeter,下载地址如下:
https://jmeter.apache.org/download_jmeter.cgi
![](https://i-blog.csdnimg.cn/blog_migrate/eae172f86a48525c08e3a5db5a3b2cdf.png)
下载之前要先检查java环境,打开cmd窗口,运行命令:java -version (最新jmeter要求java版本在1.8及以上),我的是java1.8版本。java环境没问题后,按图中所示操作,下载好压缩包,解压安装即可。一路点击“下一步”最后点击完成。我们会得到这样的一群文件夹!
![](https://i-blog.csdnimg.cn/blog_migrate/1c933627ce8792e444014aa227b62f2e.png)
打开其中的/bin,我们会找到一个Jmeter.bat,这就是Jmeter的启动程序了:
接下来我们双击Jmeter.bat就可以打开Jmeter软件啦,打开的时候会先跳出一个黑色命令行框,不用管它,直接最小化就可以,不要关闭,因为关了之后Jmeter也就一并关掉了。
这就是Jmeter的主界面:
![](https://i-blog.csdnimg.cn/blog_migrate/479d72d9486eb68b04a6726da789db77.png)
图标是一个红色的羽毛笔,界面文字中英结合,整体看一下还蛮友好。
接下来我们就可以开始对网页进行测试啦,要准备好你想要测试的网址URL,先ctrl+c复制到剪贴板,我们先进入测试计划,添加一个线程组:
![](https://i-blog.csdnimg.cn/blog_migrate/69aaa033860db01130ee19a3605fcedd.png)
添加好后就是这样子:
![](https://i-blog.csdnimg.cn/blog_migrate/e1cb43c095053a6fd905ab84b1d8c42a.png)
在这里有几个参数需要稍微注意一下:
![](https://i-blog.csdnimg.cn/blog_migrate/29479bf315a62f248d5c707000809804.png)
我们可以在第一行【名称】栏里更改任务名称。这里我就先不改啦。
主要的是下面我红字注释的部分,分别表示的含义我已经标注了,平时我们测试用到比较主要的设置参数就是这三个。
其中线程数÷Period=一秒执行多少个线程;线程数×循环次数=共执行了多少个线程;Preiod×循环次数=总的执行时间。
在测试之前我们要确定好这三个参数,比如我依次填写20;10;5,即有20个虚拟用户,每次要10秒全部执行完,循环次数为5次。
了解以上参数及其意义并修改好参数后,我们来在线程组上点击右键,添加HTTP请求,流程如下:
![](https://i-blog.csdnimg.cn/blog_migrate/353a1e5a8340f8cc231b9b97efe65fd9.png)
添加好了嘛,可以看一下是这样子:
![](https://i-blog.csdnimg.cn/blog_migrate/0e6bc05a4bbc68d875a473870c737b74.png)
名称是可以自由更改的我就不提啦,我们可以在HTTP请求下的【路径】栏里,填写我们想要测试的URL,我就用搜狗主页https://www.sogou.com/为例,先填写好如图(要记得上面线程组的参数要提前填写好哦):
![](https://i-blog.csdnimg.cn/blog_migrate/9296358e0bd0df82ce151cb4cc7715d5.png)
此时其实就可以点击上面中间的绿色三角形按钮来执行了,但是我们为了便于观察执行结果,还需要添加一个监听器。
在【HTTP请求】(如果你更改了名称就是你自己所
![](https://i-blog.csdnimg.cn/blog_migrate/638140d8688dcbd661fd9489d55363e9.png)
该的名字)上右键,选择监听器,可以添加一个【用表格查看结果】,流程如下:
其他形式的监听器也可以自己摸索尝试一下。我们先添加好表格监听,如图:
![](https://i-blog.csdnimg.cn/blog_migrate/c6018b9177015835a7fa7aee25026601.png)
接下来就可以点击运行啦!点击这里,
![](https://i-blog.csdnimg.cn/blog_migrate/5e8d812979de7140edd23b790ba824f2.png)
然后就可以在表格监听界面看到执行结果,在右上角能够看到我们刚刚的任务的总执行时间。执行情况如下:
![](https://i-blog.csdnimg.cn/blog_migrate/97570d7a15e62761a2fac0b648b45682.png)
Status状态栏里面全都是绿色的小盾牌,说明执行没有问题,表格里面可以看到各种参数如起始时间,线程名,标签,延迟等等。如果看到Status下出现红色的说明出现问题,需要进一步探究。
察看结果树响应数据 Response Body数据乱码解决操作如下:
1、打开Jmeter安装的bin目录,找到jmeter.properties
![](https://i-blog.csdnimg.cn/blog_migrate/14c47a11802f9b2235551624f2d6489c.png)
2、搜索sampleresult.default.encoding这个参数,把ISO-8859-1修改成utf-8,去掉前面的注释,保存
![](https://i-blog.csdnimg.cn/blog_migrate/2e000cd485018e27423d88970f0f83ec.png)
3、关闭Jmeter,重启后生效
![](https://i-blog.csdnimg.cn/blog_migrate/e880a5ccc9c1b8008fd2ddd60be9ef36.png)
线程组添加请求头参数
![](https://i-blog.csdnimg.cn/blog_migrate/ae6690a33f5bbbcee36d994409e5d61b.png)
打包部署:凡是单独部署的服务的pom文件都需要加入打包插件
<build>
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
开启响应个数窗口:
启动默认日志 nohup.out 文件
nohup java -jar eureka.jar &
指定输出日志文件
nohup java -jar eureka.jar > message.log 2>&1 &
查看日志
tail -f nohup.out
查看Java进程
ps -ef | grep java
![](https://i-blog.csdnimg.cn/blog_migrate/20f0444b50c862f537c13385b0c5d510.png)
强制杀死
kill -9 6012