Jmeter(五十五) - 从入门到精通高级篇 - 如何在linux系统下运行jmeter脚本 - 下篇(详解教程)

1.简介

 上一篇宏哥已经介绍了如何在Linux系统下运行Jmeter脚本以及宏哥在运行过程中遇到的问题和解决方案,想必各位小伙伴都已经在Linux服务器或者虚拟机上已经实践并且都已经成功运行了,上一篇宏哥讲解和分享的是运行的没有调用外部文件的jmeter脚本。但是在实际工作中往往需要我们调用外部文件(包括CSV参数化文件、java需要用的架包等)进行参数传递,那么如果我们遇到这样的jmeter脚本如何在Linux系统下运行呢???那么今天宏哥就来介绍一下如何在Linux系统下运行带有外部文件的Jmeter脚本。以供各位小伙伴或者童鞋们参考,希望对你有所帮助。

2.项目实战

我们今天使用Jmeter5.4调用这个网址:https://reqres.in的开放API来举例,接口信息如下:

获取用户列表

Url: https://reqres.in/api/users?page=页码

HTTP Method: GET

2.1CSV文件准备

1.新建一个文本文档,然后把后缀.txt改成.csv,使用notepad或者记事本打开(这里使用的是notepad)。

2.将我们的批量测试数据 pageNum(页码)写进来,如下图所示:

2.2添加CSV数据文件设置

1.添加CSV数据文件设置:打开jmeter -> 右键测试计划 -> 添加配置元件 -> CSV 数据文件设置,如下图所示:

2.3创建HTTP请求

1.创建HTTP请求:打开Jmeter -> 右键测试计划 -> 添加-线程-线程组 -> 右键线程组 -> 添加-取样器-HTTP请求,如下图所示:

2.4添加察看结果树

1.添加察看结果树:右键HTTP请求 -> 添加-监听器-查看结果树,如下图所示:

2.5运行并查看结果

1.保存测试脚本为test.jmx,然后运行,查看结果。如下图所示:

从上图可以看到:查看结果树,发现的pageNum已经是CSV数据文件中的数据了,响应数据就是对应num的内容。

最后,我们回到开始的问题,造大量的不同内容的相同单据。我们使用CSV文件来存不同的内容,使用jmeter来循环调用创建数据的接口,这样就不用手动再去创建单据了,既省时又省力。

好了,到此带有外部文件的Jmeter脚本就已经调试好了,言归正传:如何在Linux服务器上或者虚拟机运行这样的脚本了???接下来宏哥将会一一介绍和分享。

2.6上传外部文件

1.宏哥这里就不在创建新的文件夹了,直接上传到脚本的文件夹中,如下图所示:

2.查看外边文件在Linux服务器或者虚拟机上的路径,如下图所示:

3.以文本形式打开要运行的test.jmx文件,修改外部文件调用路径(需要修改为linux系统下外部文件放置路径,也就是上一步骤查看到的路径),修改完毕后记住保存。如下图所示:

2.7运行脚本

1.将在Windows调试好的基本上传到test文件夹中,如下图所示:

2.将脚本上传至linux服务器,然后就在当前的test目录下,输入命令 jmeter -n -t test.jmx -l log.jtl ,运行jmeter脚本。运行结果,如下图所示:

3.跑完之后,在test目录下,生成两个文件:一个是jmeter.log(jmeter运行日志),一个是我们的性能结果文件(log.jtl),我们用命令把log.jtl文件导入windows系统就能查看结果了,如下图所示:

2.8查看测试报告

1.在windows上启动jmeter,添加所需的监听器,导入脚本运行产生的log.jtl文件,查看结果树测试结果,如下图所示:

2.查看聚合报告测试结果,如下图所示:

3.小结

1.要注意在修改外边文件路径时候,记得加上外部文件的名字(路径+文件名),其他的外部引用类似。

2.注意:调用了外部文件,则需要将这个外部文件放在linux系统的某个路径下,然后修改.jmx中的代码,这样jmeter才会在linux中去调用这个外部文件。

4.知识扩展

1.在.jmx文件中,不仅可以修改外部文件路径,同时也可以修改线程数量或者是循环体控制的次数等等相关要素。

2.为什么要非GUI模式运行

jmeter是java语言开发,实际是运行在JVM中的,GUI模式运行需要耗费较多的系统资源,一般来说,GUI模式要占用10%-25%的系统资源。

而使用非GUI模式(即linux或dos命令)可以降低对资源的消耗,提升单台负载机所能模拟的并发数。

启动jmeter,提醒如下:

 好了,时间也不早了,今天就分享和讲解到这里,希望对您有所帮助,感谢您耐心地阅读!

posted @ 2022-06-20 11:11  北京-宏哥  阅读(599)  评论(0编辑  收藏  举报
停止精灵球