以下是我通过谷歌自带的抓包所截取的文件上传的接口
Jmeter 新建一个Http Request 采样器,填写相关的接口地址信息,如图:
然后就要填写post的内容,此时再看抓包截取的请求内容,如图:
jmeter 设置请求信息,如图:
此时,添加结果树,查看响应报文,一直报文件不存在
查了许多资料,有可能是因为文件上传路径的'\'被编码了,服务器无法识别
此时,需在http request 设置 implementation 为 Java ,让请求内容不被编码,如图:
此时,上传成功
1.解决 jmeter 非 GUI 模式运行测试时,结果.jtl 文件没有响应数据及中文乱码问题
(1)修改bin目录下的user.properties文件,追加配置:
jmeter.save.saveservice.response_data=true
jmeter.save.saveservice.samplerData=true
jmeter.save.saveservice.requestHeaders=true
jmeter.save.saveservice.url=true
jmeter.save.saveservice.responseHeaders=true
(2)jmeter\bin\jmeter.properties文件下把sampleresult.default.encoding的属性改成UTF-8并解开注释
2.Jmeter 高并发内存溢出问题
(1)修改apache-jmeter-3.2\bin\Jmeter.bat文件中的HEAP参数,如下
set HEAP=-Xms2048m-Xmx2048m
(2)可以去删除Jmeter bin文件夹下的文件jmeter.log 文件,或者每次内存溢出报错也会生成类似hs_err_pid6872.log文件,也要删除。
3.特别重要!!!脚本未保存,退出Jmeter
高并发跑的时候,可能内存溢出/脚本卡住直接退出Jmeter,然而我刚刚改的还没有保存........
不用担心脚本找不回,
这个时候有运行过,脚本会自动保存在apache-jmeter-3.2\backups文件夹下,
如果没有运行过的话,那哭吧,就是找不回来了.....
4.如何导出Jmeter 的报告
在跑脚本之前先在报告里配置报告存储路径,这样每次新运行的脚本生成报告就存储下来了,如下图:
注:每次运行如果报告存储路径及名字没有改的话会覆盖掉哦
5.Jmeter 非GUI模式生成html报告方法:
1.在Jmeter bin目录下输入以下命令并回车运行:
jmeter –n t .jmx脚本路径–l .jtl报告存放路径 –e –o html报告存放路径
注:(1)可能出现报错Error in NonGUIDriver
java.lang.IllegalArgumentException 是因为jmeter/bin/user.properties中,添加了一条如下属性 jmeter.save.saveservice.output_format=xml ,删除后再使用jmeter –n t .jmx脚本路径–l .jtl报告存放路径–e –o html报告存放路径 命令即可生成html报告;(2)html报告存放路径 必须是一个当前不存在的文件夹,否则会报错An error occurred:Cannot write to“F:\report”as folder is not empty.
参考文档: https://www.cnblogs.com/zymnstlm/p/10151155.html
6. 非GUI模式生成的 .jtl 报告在Jmeter可视化界面结果树打开Request 为No data to display,Response data为空解决办法:
(1)jmeter/bin/user.properties下添加如下命令行:
jmeter.save.saveservice.response_data=true
jmeter.save.saveservice.samplerData=true
jmeter.save.saveservice.requestHeaders=true
jmeter.save.saveservice.url=true
jmeter.save.saveservice.responseHeaders=true
(2)View Results Tree 的Configure 要勾选 save
后续遇到继续更.......
一、配置java环境1:先查看系统32/64: uname -a根据系统的版本去Oracle官网下载jdk,下载后安装jdk即可。2:配置JAVA环境变量:vi /etc/profile追加如下内容:JAVA_HOME=/opt/jdk1.6.0_20 PATH=$JAVA_HOME/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/tools.jarexport JAVA_HOMEexport PATHexport CLASSPATH其中的JAVA_HOME为jdk的安装路径3:验证 echo $PATH 或者 java -version二、安装resin下载resin后,解压运行安装脚本: ./resin.sh console。然后在自己pc上访问 server ip:port 看到resin默认欢迎页面即说明安装成功。之后把在web项目的war包拷进 ren目录下的webapps 文件夹内,即可在外网访问服务器上的web项目了。三、 安装jmeter下载:同样在jemeter官网下载 对应的安装包,解压后执行:./jmeter -n -t ../ssdb_test.jmx -l ../log.jtl命令说明:a.-n 参数说明不用验证是否安装了图形库b. .jmx文件可以在windows环境下的用jmeter图形化生成,涉及参数以及测试结果的.csv文件路径可以直接 用notepad++ vi 等修改.jmx文件,确保其相对于.jmx文件路径正确。c.log.jtl 保存测试结果 既然没装图形界面库,那么测试结果.jtl文件就只能在windows下用jmeter来查看了。执行效果如下:[@zjm_44_250 bin]# ./jmeter -n -t ../ssdb_test.jmx -l ../log.jtlCreating summariser <summary>Created the tree successfully using ../ssdb_test.jmxStarting the test @ Mon Dec 29 18:43:20 CST 2014 (1419849800772)Waiting for possible shutdown message on port 4445summary = 100 in 0.3s = 289.9/s Avg: 105 Min: 3 Max: 285 Err: 0 (0.00%)Tidying up ... @ Mon Dec 29 18:43:21 CST 2014 (1419849801734)... end of run最后,执行命令:/home/apache-jmeter-2.8/bin/jmeter -n -t download.jmx -l log.jtllinux下最好输全路径,不然可能报bash:jeter:command not found,找不到执行文件错误,参数介绍如下:-n This specifies JMeter is to run in non-gui mode-t [name of JMX file that contains the Test Plan].-l [name of JTL file to log sample results to].-r Run all remote servers specified in JMeter.properties (or remote servers specified on command line by overriding properties)The script also lets you specify the optional firewall/proxy server information:-H [proxy server hostname or ip address] -P [proxy server port]欢迎分享,转载请注明来源:内存溢出
评论列表(0条)