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

JMeter当控制器不退出CSV数据集配置时

贺飞
2023-03-14

我将“CSV数据集配置”与“while Controller”一起使用。CSV文件在一行中有多个值(与每行一个变量的简单示例相反-这在网络中到处都是)。

示例-Id、BobId、TarFulDate、SSRId、EDPNumber、SiteCode、CrBy、CrDate、ModBy、ModDate、Status、Version、ToolVer、ShipDate、TMDate、MaintComments、ParentId、TOName 990:548254、18ATR00022018-04-02T10:00:00 05:30548254、MEATLM-18ATR0002-001、NEATOM、LVerlli、2018-03-01T16:12:37.7230000 05:30、PFibacher、2018-05-15T12:19:33 05:30,提交日期:12,018-04-02-02T10:00 05:30,547011,18ATR0002-0600-0-2

我正在使用“While控制器”。“而条件”不起作用。它一直以无限循环运行。但是,它从 CSV 文件中选取的值是正确的。它从文件中读取所有值并继续重复。

我尝试了以下方法,但都没有奏效-

${__javaScript("${Id}" != "<EOF>",)}
${__javaScript(${Id} != null,)}
${__groovy(!vars.get('Id').equals('<EOF>'),)}
${__jexl3("${Id}" != "<EOF>")} 
${__jexl3(${Id} != null)} 
${__jexl3(${Id} != "<EOF>")} 
${__jexl3('${Id}' != '<EOF>')}

当csv文件中的所有行都被处理时,我希望while控制器退出,应用程序停止。

共有2个答案

米迪
2023-03-14

我成功地让它按照以下方式工作:

1-在while条件下放这个条件:

${__groovy(vars.get('myVar') == null || (vars.get('myVar') as String) !="<EOF>",)}

2-在while中添加一个if控制器,并将采样器放入其中,然后在if条件下放入:

${__javaScript(vars.get("myVar")!="<EOF>")}
通宾白
2023-03-14

您应该在EOF上设置CSV数据集配置参数Recycle为false,并且在EOF上停止线程为false,以获取EOF值

当到达文件末尾(EOF)并且回收选项为真时,从文件的第一行重新开始读取。

如果回收选项为 false,而 stopThread 为假,则所有变量都设置为到达文件末尾时。

 类似资料:
  • 我正在创建一个Jmeter docker容器。测试输入由CSV(数据集配置)驱动。我需要在脚本中设置什么文件名路径

  • 我的.csv文件只包含一个名为domain的列 我有一个非常简单的脚本: 线程组       CSV数据集配置       调试采样器-${domain}      ForEach控制器(in有输入变量domain和输出变量out)          调试采样器-${out} 它执行第一个调试采样器,但不执行第二个。 我假设ForEach没有从CSV数据集配置获取domain变量。 请帮助。

  • 我试图在JMeter中加载我的CSV文件,但我一直得到下面的错误。我将文件结构设置为 c: \claimstest\claimsload.jmx C:\索赔stest\policies.csv

  • 我有一个JMeter设置,它从CSV数据集配置元素中配置的CSV文件中读取数据。它工作正常,CSV文件在CSV数据集配置中指定 - 现在我想从命令行而不是GUI调用JMeter,并且我想为上面的元素指定一个不同的文件名。怎么做? 我尝试了“-JCSVNAME=”,但它似乎不起作用。 想法?

  • 我是Jmeter的新手,并试图执行以程: 用户使用用户名和密码登录 显示第 1 页,其中包含 10 张发票 - 用户选择 10 张发票 - 执行 10 个 ajax 调用(发票 1、invoice2、invoice3. json 文件根据请求生成发票) 显示第 2 页以查看发票 用户注销 我已经在chrome上使用blazemeter插件记录了流程。 Jmeter中的线程组具有以下任务: 我在一个

  • 为什么EOF传递给它?有人能提供一个解决方案吗? 我遵循了以下堆栈溢出问题的步骤。27634885链接。