前边一篇文章介绍了如何生成测试报告,细心地小伙伴或者同学们可以看到宏哥启动Jmeter生成测试报告不是在gui页面操作的,而是在gui页面设置好保存以后,用命令行来生成测试报告的。这一篇宏哥就详细的介绍一下为什么用命令行而不是GUI,以及启动时的一些参数的含义。
2.为什么要命令行执行脚本?本文介绍如何从命令行运行JMeter,那么宏哥先来说说,为什么要命令行执行脚本,日常测试过程中发现,在大数量并发时,jmeterGUI界面时长宕机、卡死,在这种情况下我们就需要使用命令行来执行脚本了(非GUI也称为 no Mode模式),使用非 GUI 模式,即命令行模式运行 JMeter 测试脚本能够大大缩减所需要的系统资源。主要有以下三点:
1) 图形化界面消耗更多资源,如CPU和内存,容易使压力机达到瓶颈,从而影响测试结果。
2) 图形化界面不支持大型的负载测试和性能测试,并发较大时,jmeter会崩溃。
3) 命令行测试支持持续集成,命令行方式可以把脚本配置到Jenkins上实现持续集成,做成自动化测试。例如放到Jenkins这样的CI工具上。
3.具体步骤这个主要是针对不会代码脚本的童鞋们或者小伙伴可以首先在图形界面将脚本调试成功,然后再在非GUI也称为 no Mode模式下运行脚本。
1. 通过双击jmeter.bat打开JMeter图形界面
2.在默认的Test Plan上创建一个Thread Group
3.在Thread Group上面添加一个Sampler,选择HTTP Request
4.在Thread Group上面添加一个View Results Tree
5.点击Run,在弹出对话框询问是否保存,点击Yes,保存脚本到桌面,Test Plant And Report.jmx
6.检查View Results Tree里面的response code 是不是200,
7.通过检查测试通过,说明测试脚本没问题,我们这里选择删除View Results Tree
8.关闭当前JMeter对话框
9. 打开cmd,通过cd命令先切换到JMeter安装路径
例如: cd C:\apache-jmeter-3.2\bin
10. 输入一下命令开始执行测试
上图中红色框里的内容说明:
summary = 60 in 00:00:05:在5秒内产生的总请求数是60个,其中的时间段是从脚本运行开始计算到当前时间为止,一般在脚本运行过程中主要关注 “summary=http://www.likecs.com/” 信息即可 11.8/s:系统每秒处理的请求数,相当于TPS Avg: 83:平均响应时间 Min: 43:最小响应时间 Max: 248:最大响应时间 Err: 0 (0.00%):错误数/率 Active: 100:活动的线程数