【问题标题】:Configuration savings配置节省
【发布时间】:2014-10-23 08:16:12
【问题描述】:

我有一个关于 Jmeter 的问题。我配置了线程组信息:线程数、加速周期、循环。运行后,我的 CSV 文件包含有关测试性能的不同信息,除了这些配置数据。 JMETER 将它们保存在哪里?

【问题讨论】:

  • 和 ...如果有可能以 CSV 文件格式或类似的格式提取它们?!!

标签: java .net jmeter automated-tests performance-testing


【解决方案1】:

JMeter 不会将此类信息存储在 .jtl 结果文件中。您可以配置保存的唯一内容是线程数。将下一行添加到 user.properties 文件(位于 JMeter 安装的 /bin 文件夹下)

jmeter.save.saveservice.thread_counts=true

告诉 JMeter 也存储线程数。有关详细信息,请参阅 Listeners 手册条目的 Default Configuration 章节。

备选方案是:

  1. 您可以从 jmeter.log 文件中获取此信息。寻找类似的东西:

2014/10/23 15:20:43 INFO - jmeter.threads.ThreadGroup:启动线程组编号 1 线程 10 加速 15 perThread 1500.0 delayedStart=false

  1. 如果您需要将线程数、加速时间和循环计数存储到一个文件中,您可以使用Beanshell Sampler。这是将线程数、加速时间和循环计数存储到 config.txt 文件中的代码:

    import org.apache.commons.io.FileUtils;
    
    int threads = ctx.getThreadGroup().getPropertyAsInt("ThreadGroup.num_threads");
    int loops = ctx.getThreadGroup().getSamplerController().getPropertyAsInt("LoopController.loops");
    int rampup = ctx.getThreadGroup().getPropertyAsInt("ThreadGroup.ramp_time");
    
    File config = new File("config.txt");
    if (!config.exists()){
        FileUtils.write(config, "Threads: " + threads + " loops: " + loops + " rampup: " + rampup);
    }
    

有关 JMeter 中 Beanshell 脚本的高级信息,请参阅How to use BeanShell: JMeter's favorite built-in component 指南。

【讨论】:

    【解决方案2】:

    通过将它们附加到线程组名称或示例名称中,您可以很容易地将它们包含在输出结果中。

    例如:

    1. 创建新的测试计划
    2. 添加配置元素用户定义变量,变量名为线程,值为 2。
    3. 添加线程组
    4. 将线程字段设置为“${threads}”
    5. 添加后处理器->调试后处理器
    6. 将调试后处理器的名称更改为“线程 ${__threadNum} of ${threads} 个线程”

    当您运行此测试计划时,示例结果将包含一个额外的条目,告诉您此线程的数量和组中的总数。

    您不需要额外的采样器,这只是一个演示。您可以将变量包含在您希望显示或记录的任何位置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-18
      • 1970-01-01
      • 1970-01-01
      • 2012-06-02
      • 1970-01-01
      相关资源
      最近更新 更多