当前位置: 首页 > 知识库问答 >
问题:

在分布式JMeter测试中写入以变量命名的文件

袁和通
2023-03-14

好的,我一直在将结果写入JMeter中的文件夹时遇到问题。

我已经设置了两个变量,一个用于测试的名称,一个用于提交日期。我希望将报告写到用这两个变量命名的文件夹中。

这是变量:

TestRun = "Name of test"
DateRun = $__{time(dd-MMM-yyyy HH.mm.ss)}

要写入的文件夹的路径如下所示:

C:\Tests\TestEnvironment\Results\\${TestRun}${DateRun}\file.csv

当我在主计算机上运行它时,它很好。它会保存到正确的文件和文件夹路径,最终显示如下:

C:\Tests\TestEnvironment\Results\Test Run 1 - 08-May-2014 08.55.47\file.csv

然而,当我在远程机器上运行它时,它会按如下方式保存它:

C:\Tests\TestEnvironment\Results\${TestRun}${DateRun}\file.csv

所以我最终得到了一个名为“${TestRun}${DateRun}”的文件夹

我是遗漏了一些显而易见的东西,还是这是一个真正的JMeter问题?

谢谢!

共有1个答案

越新霁
2023-03-14

根据JMeter帮助:

    -G, --globalproperty <argument>=<value>
            Define Global properties (sent to servers)
            e.g. -Gport=123
             or -Gglobal.properties

您需要使用-G键,以便您的变量可以分布在远程客户端上。

比如:

jmeter -r -n GTestRun=SomeName -GDateRun=SomeTime -t /path/to/your/plan

应该会有帮助。

或者,您可以创建一个. properties文件并通过相同的“-G”选项将其传递给远程JMeter Engines。

我希望如果你想使用JMeter__time()函数,你需要用__eval包装它,否则它将被视为一个字符串。或者,你可以使用操作系统命令来检索当前日期和时间。

有关处理JMeter属性的更多信息,请参见Apache JMeter属性定制指南。

 类似资料:
  • 我的场景是在通过jmeter进行分布式负载测试时,我希望csv文件应该以自动分布式的方式读取。如果我在csv数据集配置文件中有100个用户条目,并且从服务器的数量是10。所以在正常情况下,我必须以如下方式排列csv文件条目 所以我想要相同的csv文件有所有100个用户的条目,应该放在所有的从属和jmeter自动读取条目从这些文件和分发它。

  • 主要内容:创建JMeter测试计划,添加采样器,添加监听器,保存并执行测试计划,验证输出,添加吞吐量控制器,验证输出在本节中,我们将学习如何使用吞吐量控制器在JMeter中创建分布式负载测试计划。 出于测试目的,我们将在我们网站 www.yiibai.com 的URL下的某些网页上创建分布式负载。这些网页包括: 主页: www.yiibai.com 第1页(Java): www.yiibai.com/cplusplus/ 第2页(C语言): www.yiibai.com/cprogramming

  • 我正在尝试在分布式测试中设置JMeter Simple Table Server(STS)。在本地,在主控制器上,STS服务器已启动,我可以使用

  • 我的目标是使用 4 个 Azure 服务器作为负载生成器和 1 个 Azure 服务器来运行负载测试,以启动测试并收集结果。我运行了分布式测试,并且获得了良好的数据。但是今天当我远程启动测试时,4个负载生成器中的3个失败,所有http事务出错。失败的事务记录以下错误: 非HTTP响应消息:java.lang.ClassNotFoundException:org.apache.commons.log

  • 我正在做一个RESTAPI性能测试,在这里我必须同时做很多请求。为此,我使用了3个JMeter实例(1个主实例和2个从实例)。 为了让您有更多的竞争,我编写了一个包含2个线程组的JMeter脚本,每个组上有150个线程和一个恒定吞吐量计时器。 下面是我用来启动测试的命令行: 在这个命令行中,吞吐量是我针对3台服务器的总吞吐量(它的值除以vmnb,我的第三个变量,然后每个服务器执行这部分吞吐量),持

  • 上下文:我正在主从比为1:2的分布式负载系统上运行JMeter负载测试,使用以下命令: jmeter -n -t “home/jmeterscripts/EventGridScript.jmx” -R slave1:1099,slave2:1099 -l “home/jmeterscripts/结果.csv” -e -o “home/jmeterscripts/HTMLReports” 结果是否会