jmeter常见问题总结
1.1. HTTP报错解决办法
java.net.SocketException。先确认不是自己的服务导致的错误;当出现这种问题是,可以按照以下步骤来完成。
(1)HTTP请求组件的HTTP请求IMPLEMENTTATION选择HTTPCLIENT4,HTTPCLIENT3容易出现重连接的问题。而当我们这里不选的时候,默认会有选择,这个是配置文件jmeter.properties中的jmeter.httpsampler配置项。
(2)修改bin文件夹内的user.properties增加:
httpclient4.retrycount=1
hc.parameters.file=hc,patameters
(3)修改hc.parameters。修改http.connection.stalechech$Boolean=true。
(4)重启jmeter。
1.2. 录制脚本,启动代理后,浏览器就报java.net.SocketException:Connetion reset
在jmeter.properties中找到,将https.default.protocol=SSLv3直接改为https.default.protocol=TLSv1.2
========================================================
一、安装及启动Jmeter
本文原创,欢迎转发,但转发请务必写出处!
0、下载及安装
下载地址及Linux命令
wget http://mirrors.cnnic.cn/apache//jmeter/binaries/apache-jmeter-3.0.tgz
官网下载好tgz的Jmeter压缩包之后,直接解压,解压后的目录结构和windows版本的一致。
1、运行Jmeter报错NonGUIDriver
[root@BJ-TEST-11-kvm-221 bin]# ./jmeter.sh -n -t ../project/realnameauthINFTest/RNA_INFtest.jmx -l log.jtl
Writing log file to: /home/bjqa/apache-jmeter-3.0/bin/jmeter.log
Error in NonGUIDriver java.lang.IllegalArgumentException: Problem loading XML from:'/home/bjqa/apache-jmeter-3.0/bin/../project/realnameauthINFTest/RNA_INFtest.jmx', missing class com.thoughtworks.xstream.converters.ConversionException: kg.apc.jmeter.vizualizers.CorrectedResultCollector : kg.apc.jmeter.vizualizers.CorrectedResultCollector
---- Debugging information ----
解决:
产生该错误的原因,目前有两种情况:
情况1,低版本的JMeter运行高版本的测试计划(测试计划是在高版本的JMeter上编制的)。解决方法:使用相同或更高版本JMeter运行该计划。
情况2,使用第三方插件生成的测试计划,运行在没有该第三方插件的JMeter上。解决方法:在JMeter上安装插件或重新生成不包含插件的测试计划。
2、运行日志中出现java.net.UnknownHostException错误
2016/08/15 16:02:34 ERROR - jmeter.util.JMeterUtils: Unable to get local host IP address. java.net.UnknownHostException: BJ-TEST-11-kvm-221: BJ-TEST-11-kvm-221: Name or service not known
[root@BJ-TEST-11-kvm-221 apache-jmeter-3.0]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 localhost MDRADEL0 BJ-TEST-11-kvm-221 <----新增内容
~
[root@BJ-TEST-11-kvm-221 etc]# vim /etc/sysconfig/network
NETWORKING=yes <--检查确认这种写法
HOSTNAME=BJ-TEST-11-kvm-221 <--检查确认这种写法
二、脚本编写与运行接口测试
1、Linux下Jmeter概述
难点1、Linux如果是无操作系统UI,则修改jmx脚本比较费劲,全部都是XML形式;
技巧1、Jmeter测试计划xx.jmx小范围小数据修改还可以对照windows下notepad++打开的jmx进行修改,大范围修改最好是直接拷贝windows下的jmx内容到Linux下jmx文件中,再进行少量windowsy与Linux有
难点2、Linux下Jmeter测试结果是无界面化的,在Linux下基本上无法查看
技巧2、必须将Jmeter生成的测试结果xx.jtl文件拷贝到windows下,专门在windows下的Jmeter创建一个测试计划,添加想要查看测试结果的组件,如【查看结果树】,【聚合报告】等,并在文件名栏位右侧使用浏览选择Linux下生成的jtl文件,即可看到Linux上的测试结果。每个组件需要导入一次。
技巧3、如何生成有时间作为名称的测试结果jtl文件?
答:直接在【聚合报告】的日志写入文件栏位按照Linux下路径习惯写好,如:/home/bjqa/apache-jmeter-3.0/logs/morePresult${__time(YMD)}${__time(HMS)}.jtl ,则测试结果会在/home/bjqa/apache-jmeter-3.0/logs/目录下生成类似 morePresult201608151722.jtl
特别的,这里不要写相对路径,相对路径不是很靠谱,绝对路径可以绝对的找到日志文件。此时Jmeter运行命令如下:jmeter -n -t /home/bjqa/apache-jmeter-3.0/testplans/realnameauthINFTest/RNA_INFtest.jmx
看到没有,根本不需要增加 参数 【-l xx.jtl】来生成日志文件,因为测试计划的jmx 【聚合报告】里面已经指定过了,去/home/bjqa/apache-jmeter-3.0/logs这里就能查到日志。
但在查看图形化测试结果中有个坑:从Linux上拿回来的测试结果jtl文件在windows打开报错?多在几个脚本上面,用聚合报告打开试试,这里可能涉及到聚合报告中configure里面勾选的内容,但目前没有定论。
技巧4、想看个接口请求结果,还得把jtl文件导回到windows环境,太费劲了,如何破?
答:临时使用jmeter的log功能,在http请求中增加BeanShell PostProcessor组件,写入脚本:
prev.setDataEncoding("UTF-8"); String response_data = prev.getResponseDataAsString(); log.error("response_data----------------:"+response_data); <==高亮部分可自由发挥 |
则在jmeter.log文件中可以看到如下日志:
2016/08/17 17:09:06 ERROR - jmeter.util.BeanShellTestElement: bodydata0----------------:{"mid":"123456","data":"{\"reqId\":\"201608171709060200\",\"idNo\":\"13*********11\",\"name\":\"**文\"}","sign":"70cf51c2e6f1a9a6b7b827a3f5939e21"} 2016/08/17 17:09:06 ERROR - jmeter.util.BeanShellTestElement: response_data----------------:{"code":0,"data":{"result":1},"sign":"40af6eb30c698edd9c541bbfaa4a9aa3"} 2016/08/17 17:09:06 INFO - jmeter.threads.JMeterThread: Thread is done: setUp Thread Group 1-20 2016/08/17 17:09:06 INFO - jmeter.threads.JMeterThread: Thread finished: setUp Thread Group 1-20 2016/08/17 17:09:06 INFO - jmeter.engine.StandardJMeterEngine: All Setup Threads have ended 2016/08/17 17:09:06 INFO - jmeter.engine.StandardJMeterEngine: No enabled thread groups found 2016/08/17 17:09:06 INFO - jmeter.engine.StandardJMeterEngine: Notifying test listeners of end of test 2016/08/17 17:09:06 INFO - jmeter.reporters.Summariser: summary + 173 in 00:00:07 = 25.7/s Avg: 705 Min: 403 Max: 888 Err: 0 (0.00%) Active: 0 Started: 0 Finished: 0 2016/08/17 17:09:06 INFO - jmeter.reporters.Summariser: summary = 600 in 00:00:25 = 23.8/s Avg: 767 Min: 108 Max: 1537 Err: 0 (0.00%) <==零错误,则可以进行下一步压测 |
坑1、测试计划中引入jar包,直接手写输入不会被真正保存。
答:因为windows下Jmeter的测试计划Add directort or jar to classpath只能浏览选择文件或目录,无法直接新增手写文件目录或文件夹目录,即使在Jmeter客户端里手工书写并保存,也是无效的。
因此在复制到Linux下之前可以使用notepad++修改,然后再交由Linux下Jmeter使用即可。
坑2、VPN下SSH如何scp命令?
[testing@boce66]:/home/testing/apache-jmeter-3.0/testplan/RNAuth]#scp -P 322 root@200.100.10.158:/home/root/tmp/realname_infTest_Linux.jmx ./aa.jmx
reverse mapping checking getaddrinfo for 178.16.143.219.broad.bj.bj.dynamic.163data.com.cn [219.143.16.178] failed - POSSIBLE BREAK-IN ATTEMPT!
root@200.100.10.158's password: <===这里输入密码
realname_infTest_Linux.jmx 100% 140KB 140.3KB/s 00:00
[testing@boce66]:/home/testing/apache-jmeter-3.0/testplan/RNAuth]#ls
aa.jmx
坑3、Linux下Jmeter3.0遇到java.net.SocketException: Connection reset
可参考http://stackoverflow.com/questions/20802694/connection-reset-meesage-from-jmeter
坑4、脚本的内容文字和UI上面你的说明文字未必能对的上
jmeter常见问题总结相关推荐
- JMeter 常见问题总结
最近才开始学习JMeter压测,其中碰到的问题,以及解决办法~~ (有不对的地方,请喷~,多多赐教) PS:问题7.8还有待解决,各位大神路过的时候,了解的希望可以留下一点建议,跪谢~~~ JMete ...
- JMeter常见问题集合
前言 本文内容一部分来自自己的经验,另一部分汇集于网络,最初发布于博客园,现在迁回CSDN. 正文 JMeter 测试计划 测试计划 使用 JMeter 进行测试的起点,是其它 JMeter 测试元件 ...
- 【转】Jmeter常见问题
收集工作中JMeter遇到的各种问题 1. JMeter的工作原理是什么? 向服务器提交请求:从服务器取回请求返回的结果. 2. JMeter的作用? JMeter可以用于测试静态或者动态资源的性 ...
- Jmeter常见问题(转)
收集工作中JMeter遇到的各种问题 1. JMeter的工作原理是什么? 向服务器提交请求:从服务器取回请求返回的结果. 2. JMeter的作用? JMeter可以用于测试静态或者动态资源的性 ...
- Jmeter常见问题
1. JMeter的工作原理是什么? 向服务器提交请求:从服务器取回请求返回的结果. 2. JMeter的作用? JMeter可以用于测试静态或者动态资源的性能(文件.Servlets.Perl脚 ...
- 【转】JMeter学习(二十七)Jmeter常见问题
收集工作中JMeter遇到的各种问题 1. JMeter的工作原理是什么? 向服务器提交请求:从服务器取回请求返回的结果. 2. JMeter的作用? JMeter可以用于测试静态或者动态资源的性 ...
- jmeter常见问题3-各种BeanShell处理器的作用以及使用方法
Jmeter中包括多种BeanShell,用法差不多,只是作用的地方不同. 定时器: BeanShell Timer 前置处理器:BeanShell PreProcessor,提前处理请求参数,如:加 ...
- JMeter 测试计划
测试计划 使用 JMeter 进行测试的起点,是其它 JMeter 测试元件的容器. 线程组 代表一定数量的并发用户,它可以用来模拟并发用户发送请求.实际的请求内容在 Sampler中定义,它被线程组 ...
- 转帖Jmeter中的几个重要测试指标释义
Aggregate Report 是 JMeter 常用的一个 Listener,中文被翻译为"聚合报告".今天再次有同行问到这个报告中的各项数据表示什么意思,顺便在这里公布一下, ...
最新文章
- R语言实战应用精讲50篇(二十五)-时空数据统计模型:确定性预测模型
- 推荐的这5个高效在线工具,每一个都很良心!
- php ajax 长轮询 表单,Thinkphp结合AJAX长轮询实现PC与APP推送详解
- 实参和形参的一些问题
- c++ 课程设计之车票管理系统
- Docker系列(九)Docker的远程访问
- 气象netCDF数据可视化分析
- shapley和树的shap
- 原创 基于微信小程序毕业设计题目选题课题 自习室图书馆座位预约小程序的设计与实现(2)座位预约的实现
- 罗丹明RB/四甲基罗丹明标记酰胺化果胶Amidated Pectin, Rhodamine B/TRITC labeled;Rhodamine B/TRITC-Amidated Pectin
- Semantic UI 之 条目 item
- 部分HP笔记本无法使用GHOST软件解决方法
- phpstorm 配置 xdebug断点调试
- 语音识别类产品的分类及应用场景
- 第二天就能练起来的技能:真北直播回顾,及KOL讲师、海报设计师招募
- Git mvn 命令
- FrontPage 2000 WEB 扩展客户端 安装失败
- Android之模仿QQ保存账号密码
- 济南高新区支撑“一次办好”的“区块链+政务服务”平台
- 迅为国产RK3568开发板Android移植 LCD 屏幕
热门文章
- c语言问题 角谷猜想,hdu 1279 验证角谷猜想(简单的模拟)
- 2017北邮计算机考研经验总结,北邮计算机专考研经验总结.docx
- 股票移动平均线matlab,移动平均线(MA)
- 论文笔记:Mind the Gap An Experimental Evaluation of Imputation ofMissing Values Techniques in TimeSeries
- 华为机试---Word Maze迷宫游戏
- 自适应情侣纪念日记录网站源码
- 2022年全球与中国湿钽电容器行业发展趋势及投资战略分析报告
- Elasticsearch _reindex Alias使用
- 太赞了!没想到一个Handler还有中高级几种问法,进阶学习资料!
- Android 贝塞尔曲线实战之网易云音乐鲸云特效,2021程序员进阶宝典