【问题标题】:jmeter - showing the values of variablesjmeter - 显示变量的值
【发布时间】:2011-04-19 10:36:23
【问题描述】:

我的团队使用 JM 进行了很多自动化测试。通常我们有一个属性文件,其中定义了一堆变量。这些又被映射到“用户定义的变量”,我们有许多不同的集合。

这些在 jmx 的其余部分中都被引用了——我觉得很难,因为在这么多不同的地方有这么多的变量来知道什么是什么。有什么方法可以让 jmeter 显示其变量的值 - 自定义采样器可以吗?理想情况下,如果您可以将 var 悬停并显示其值,我会喜欢它。

有什么想法吗?

【问题讨论】:

    标签: variables jmeter


    【解决方案1】:

    最新版本的 Jmeter 有一个很棒的采样器,称为“调试采样器”,它将显示以下值:Jmeter 变量、Jmeter 属性或系统属性。

    您可以将它们插入脚本中的任意位置,以便在给定时间获取值。您需要启用“查看结果树”来查看采样器。

    鉴于 Jmeter 在运行时从文件中声明变量,您将无法获得理想的解决方案。

    我很好奇...使用“CSV 数据集配置”而不是从属性文件中填充“用户定义的变量”会更干净吗?

    编辑:添加了关于变量声明的解释并询问了 CSV 问题。

    【讨论】:

    • 谢谢我试一试 BG。
    【解决方案2】:

    这是我过去如何通过代码直接获取一组变量(JSR223 PostProcessor 中的 Java 代码变体):

    1. 在需要检查项目中jMeter变量的地方右键单击添加“JSR223 PostProcessor”;

    1. 设置语言(在我的例子中 - 为 java);
    2. 将以下代码添加到脚本窗口:
    import java.util.Map;
    
    String jMeterVars;
    jMeterVars = "Quantity of variables: " + vars.entrySet().size() + ".\n\n";
    jMeterVars += "[VARIABLE NAME]      ==>>      [VARIABLE VALUE]\n\n";
    for (Map.Entry entry : vars.entrySet()) {
        jMeterVars += entry.getKey() + "  ==>>  " + entry.getValue().toString() + "\n";
    }
    try {
        FileWriter fw = new FileWriter("D:\\jMeterVarsForStackOverflow.txt",true);
        fw.write(jMeterVars);
        fw.close();
    } catch(IOException ioe) {
        System.err.println("IOException: " + ioe.getMessage());
    }
    
    1. 检查 JSR223 后处理器中的所有内容是否如下所示:
    2. 在 jMeter 中启动您的项目。

    上面的代码将在 D: 处创建 jMeterVarsForStackOverflow.txt 文件并将所有变量放在那里:

    【讨论】:

      猜你喜欢
      • 2019-03-15
      • 1970-01-01
      • 2016-04-03
      • 2022-01-23
      • 2019-09-10
      • 1970-01-01
      • 2021-04-05
      • 2011-03-31
      • 1970-01-01
      相关资源
      最近更新 更多