1.2 在命令行下运行脚本
将1.1中的脚本保存,在编辑是随时可以保存,保存后是一个jmx格式的文件(如图),这个就是要在命令行下运行的脚本(作为参数运行)。
这个脚本文件可以不包含1.1中第四和第五步,即可以不需要添加监听器,运行是在命令行下执行。
进到解压apache-jmeter-2.13的路径下,
执行Jmeter 脚本的命令是:
./bin/jmeter -n -t .jmx文件(脚本) -l .jtl文件(测试运行结果文件)
例:
./bin/jmeter -n -t /home/test/Bing接口测试样本.jmx -l /home/test/Bing接口测试样本.jtl
参数说明:
-n表示以nogui方式运行测试计划
-t表示测试计划,后面跟测试计划名称
-l表示测试结果,后面跟测试结果文件名称
运行后显示如下界面,即成功运行了脚本:
运行结束后,会显示:
显示 ... end of run 即脚本运行结束,在输入的测试运行结果文件的路径下就会出现命令中输入的jtl文件了。
2. 查看测试结果
将上一步运行结束后生成的jtl文件传输到可视化图形界面可打开的路径下, 打开可视化图形界面的jmeter
随便新建一个项目,也可以用先用的项目,添加监听器,在监听器界面,点击浏览,选择测试运行的结果文件 .jtl文件,就可以查看结果了。
打开文件后,就会显示文件中的结果,但是如上述给出的命令在linux下得到的jtl文件里只有取样器结果,请求和相应数据为空
同样,在聚合报告中也可以打开jtl文件,查看结果:
备注: 另外,在Linux下我们有时候希望线程可以在后台运行,这样我们关闭当前连接后,线程依然可以运行,这里提供一个将 jmeter命令设置为后台线程的方法。
使用setsid命令:
setsid bin/jmeter -n -t .jmx文件 -l .jtl文件
setsid ./bin/jmeter -n -t .jmx文件 -l .jtl文件
有没有 ./ 当前目录的表示符都可以
运行结束后,会显示:
通过jtl转换成html
sh jmeter.sh -g jtl文件 -o html路径 (会生成个文件夹,里面有各种js,css之类) 如 sh jmeter.sh -g xxxxxx.jtl -o result/html