JMETER方法技巧和问题解决总结

发表于:2019-7-12 17:43

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:冯瑶    来源:会员投稿

#
Jmeter
  (1)通过调整JMETER日志级别来定位问题
  解决方案:在调试JMETER脚本时,为了获得更详细的日志,可以修改JMETER配置文件中的日志级别。日志级别分为FATAL_ERROR,ERROR,WARN,INFO,DEBUG五级。其中,FATAL_ERROR打印日志最少,DEBUG打印日志最详细。JMETER3.2版本之前,是在jmeter.properties文件中修改log_level.jmeter。在3.2版本之后,是在log4j2.xml文件中修改。调试脚本可使用DEBUG级别看详细信息以便定位问题,发压时建议设置成ERROR,以免打印日志耗费系统资源。
  (2)发压机系统资源利用率低,但应用交易TPS上不去。或者JMETER工具报OutOfMemoryError
  解决方案:
  原因是JMETER默认分配的内存参数较小,为512M。可通过修改JMETER工具中JVM的内存分配来解决。修改方法:打开jmeter.bat文件,将set HEAP=-Xms512m -Xmx512m修改为set HEAP=-Xms1024m -Xmx1024m
  (3)JMETER开始录制时报错:Could not create script recorder,由于机器上安了两个版本的JDK导致。
  解决方案:
  确认环境变量中JDK的classpath,并在jmeter.bat中修改参数,指定JKD的版本号和位置。需要修改的参数如下:
  set MINIMAL_VERSION=1.8.0_181
  set JAVA_HOME=C:\Program Files (x86)\Java\jdk1.8.0_181\bin
  set PATH=%JAVA_HOME%\bin;%PATH%
  (4)大并发测试时,发压机CPU很高,程序卡顿。
  解决方案:
  JMETER性能测试过程中,由于发压机的配置有限,CPU、内存可能存在瓶颈。当用大并发进行测试时,程序可能比较卡。需要搭建jmeter分布式集群,增加发压机进行远程启动测试。
  (5)JMETER返回的响应数据是乱码。
  解决方案:
  在jmeter.properties文件中,将sampleresult.default.encoding的值修改为UTF-8
  (6)对于没有返回响应数据的交易该如何设置断言。
  解决方案:在性能测试脚本中要注意检查点的设置,以便获知交易的脚本是否成功执行。当请求发送后有响应数据时,可添加响应文本作为断言,如交易成功等信息。当请求发送后无响应数据时,可添加响应代码作为断言。如HTTP协议的请求发送后,响应代码200带代表请求已成功。

      版权声明:本文出自51Testing会员投稿,51Testing软件测试网及相关内容提供者拥有内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号