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

使用jar文件+动态值进入循环counter-jmeter

邹山
2023-03-14

//JAR数据

public class PabBDetailsIncluded {

public static String ARGENTINA(String sourceAccount)
    {
        String a = 
                "{"
                + "\"money\": {"
                + "\"amount\": 10,"
                + "\"currency\": \"EUR\""
                + "},"

                + "\"description\": \"Payment\","
                + "\"sourceAccount\": " + sourceAccount + ","



                + "}"
                + "}";

        return a;
        }

1)有了上面的数据,我想“提要”Jmeter调用

我希望在执行过程中传递“Source Account”,而不是硬编码到jar文件中,而不是所有的值都是静态的。

2)我告诉循环计数器计数:${__groovy(com.example.testdata.getDeclaredMethods().size(),)}

3)进入JSR223预处理器“脚本”区域如下所示:

    import com.example.PabBDetailsIncluded;

def sourceAccount = vars.get("accountNumberLogger");


def testData = new com.example.PabBDetailsIncluded()
def methods = testData.class.getDeclaredMethods(sourceAccount)
def payload = org.apache.commons.lang.reflect.MethodUtils.invokeExactMethod(testData, methods[vars.get('__jm__Loop Controller__idx') as int].getName())
sampler.addNonEncodedArgument('',payload,'')
sampler.setPostBodyRaw(true)

如有任何帮助,不胜感激。

共有1个答案

东龙野
2023-03-14

这是不同的,因为出于某种原因,您使用的是静态函数,需要稍微不同地调用它。

而且,现在你需要把参数传递给函数,我看不出你在哪里传递这个参数。

您的代码需要修改如下:

def sourceAccount = vars.get("accountNumberLogger")
def testData = new com.example.PabBDetailsIncluded()
def methods = testData.class.getMethods()
def payload = methods[vars.get('__jm__Loop Controller__idx') as int].invoke(testData, sourceAccount)
    null
 类似资料:
  • 我想创建一个场景,在这个场景中我想使用来自jar文件的数据到Jmeter循环逻辑中。 我的罐子看起来像: 1)有了上面的数据,我想像贝娄图片中描述的那样“feed”Jmeter调用 2)每当我在jar文件中添加新的国家时,循环就会相应地增加。 有些人想如何做到这一点,我应该用什么作为变量,我如何告诉循环增加?

  • 我正在从Sahni的“C语言数据结构基础”中学习数据结构。在使用动态数组的循环队列中,作者提到了以下几点, 假设capacity是循环队列的初始容量,我们必须首先使用realloc增加数组的大小,这将把最大容量元素复制到新的数组中。为了获得正确的循环队列配置,我们必须将右段中的元素(即元素a和B)滑动到数组的右端(参见图3.7.d)。数组加倍和向右滑动一起最多复制2*容量-2个元素。

  • 问题内容: 有没有一种方法可以设置文件输入()的值,还是为了安全起见将其全部阻止?我正在尝试使用Google Gears的openFiles创建一个简单的多上传器。 注意: 以下答案反映了2009年旧版浏览器的状态。现在,您实际上可以在2017年使用JavaScript动态/以编程方式设置文件输入元素的值。 有关详细信息和演示,请参见此问题的答案: 如何以编程方式设置文件输入值(即:拖放文件时)?

  • 问题内容: 在连接到仓库以及添加,提交甚至循环提交文件的消息方面,我已经设法掌握了jGit文件的基础知识。 我接下来要做的是能够获取单个文件的所有提交消息,然后能够将单个文件还原回特定的参考/时间点。 问题答案: 这是基于所有父提交查找提交更改的方法 (标量代码) 请注意,TreeFilter.ANY_DIFF适用于单个树遍历器,并将返回根提交中可用的所有元素。 然后,您将不得不遍历树以查看您的文

  • 问题内容: 我有一个要从C#中运行的jar文件。 这是我到目前为止的内容: 不幸的是,我得到“系统找不到指定的文件”,这很有意义,因为它不是命令文件。 我在网上看到过代码,告诉您使用: 但是,我需要返回码,并且需要等待它退出。 谢谢。 问题答案: 终于解决了。文件名必须是java,参数必须包含jar文件的位置(以及您要传递的所有参数)

  • 问题内容: 我希望阅读具有15个字段和大约2000行的Excel工作簿,并将每行转换为Python中的字典。然后,我想将每个词典添加到列表中。我希望工作簿最上面一行的每个字段都成为每个字典中的键,并让相应的单元格值成为字典中的值。我已经在这里和这里看过示例,但是我想做一些不同的事情。第二个示例可以工作,但是我觉得循环遍历第一行来填充字典键,然后遍历每一行来获取值会更有效。我的Excel文件包含来自