昨天,项目临时需要跑一下性能脚本,并要出一份报告。问了下Jmeter自带的HTML报告就能满足要求,那就怎么简单怎么来吧。
已知:生成HTML测试报告的命令如下:
1、已有.jtl文件 jmeter -g test.jtl -o path
# -g:后跟 .jtl 文件所在的路径 -o:后跟生成的HTML文件存放的路径
2、没有.jtl文件 jmeter -n -t test.jmx -l test.jtl -e -o path
# -e:在脚本运行结束后生成HTML报告 -o:后跟生成的HTML文件存放的路径
操作:命令行执行 jemter 脚本:jmeter -n -t 贵阳市互联网医院平台.jmx -l result.jtl -e -o report
报错一:
Error in NonGUIDriver java.lang.IllegalArgumentException: Report generation requires csv output format, check 'jmeter.save.saveservice.output_format' property
原因:jmeter.save.saveservice.output_format 需要设置成csv格式,之前为了生成的.jtl文件里有请求和返回数据,设置成的格式为xml
解决方法:打开bin文件夹下的 user.properties,查找 jmeter.save.saveservice.output_format ,设置成csv,如下图:
报错二:
Error generating the report: java.lang.NullPointerException
原因:脚本中使用了csv文件,文件的路径没有改成自己的
调试时,打开的jmx文件是企业微信日志文件夹中的脚本,修改路径也只修改了那个脚本;从企业微信中复制到桌面的脚本(即命令行执行使用的脚本)并没有修改csv文件路径
解决方法:打开命令行执行使用的jmx文件,修改csv文件路径
最后就执行成功啦,报告也生成成功啦!