zoukankan      html  css  js  c++  java
  • 【JMeter】【性能测试】参数化,内存溢出问题

    这一篇文章随便说一下JMETER的脚本参数化

    1:Parameters的两种参数化方法

    1.1:函数助手参数化

    首先准备你的参数数据。我在bin/data中新建了一个dat文件,记事本另存为修改编码为UTF-8,注意用户名和密码是一一对应的,用英文逗号隔开

    点击函数助手对话框,填写数据文件路径与列数

     点击生成,生成函数

     

    将生成的函数填入Parameters值中,注意参数与列数的对应关系!

    我们刚刚在数据中填入了三个参数,这里我们需要修改一下线程。且将线程改为3

    执行一下脚本,观察结果树。可以发现请求发送了三次,每次的用户名不同。

    1.2:Parameters的函数助手参数化就说到这里,下面看一下JSON格式如何参数化。这里我们用到了csv文件参数化的方法

    借助jmeter中的配置原件:CSV Data Set Config

    配置 CSV Data Set Config

    在json数组中引入变量,执行并查看结果树

    可以看到执行了三次,每次传入的用户名不同

    关于参数化就讲到这里,大家学会了参数化,可以去做压力测试啦~

    ——————————————————分隔符——————————————————————

    结尾彩蛋~

    使用jmeter进行压力测试时遇到一段时间后报内存溢出outfmenmory错误,导致jmeter卡死了,此时我们应该怎么办?

    内存溢出,我们就去改一下线程吧~

    1、windows环境下,修改jmeter.bat
    set HEAP=-Xms512m -Xmx4000m
    set NEW=-XX:NewSize=256m -XX:MaxNewSize=1024m
    改为:
    set HEAP=-Xms256m -Xmx1024m
    set NEW=-XX:NewSize=128m -XX:MaxNewSize=512m
    set PERM=-XX:PermSize=1024m -XX:MaxPermSize=1024m


    heap最多设置为物理内存的一半,默认设置为512M.如果heap超过物理内存的一半,可能运行jmeter会慢,甚至出现内存溢出,原因java比较吃内存,占CPU.

    注意:JDK32位的电脑Xmx不能超过1500m,最大1378m.否则在启动Jmeter时会报错哦~

    如何查看本机JDK的位数?

    CMD下执行 java -version

    现在你会发现,一点也不卡啦!

  • 相关阅读:
    这里有20位程序员关于求职的疑惑,还好也有参考答案
    非科班小白如何逆袭,成功跨考985软件工程?!
    springmvc之RequestMapping中的请求参数和请求头
    springmvc之RequestMapping中的请求方式
    springmvc之RequestMapping注解既可以修饰类也可以修饰方法
    springmvc之第一个springmvc程序
    python之列表推导和生成器表达式
    python之容器序列和扁平序列
    python之利用魔术方法实现自己定义的二维向量
    spring之整合struts2
  • 原文地址:https://www.cnblogs.com/zhuzhubaoya/p/10477839.html
Copyright © 2011-2022 走看看