0

以下是我一直试图在 JMETER 中解决以下 UseCase 的代码。感谢快速帮助。

用例:需要验证页面响应中的特定文本(如“历史”),如果文本计数超过 50,则需要随机选择页面内的选项。如果文本计数小于 50需要选择第一个选项。

我是 Jmeter 的新手,并试图使用 JSR223 POST 处理器解决这个问题,但不知何故卡在 vars.put 函数中,我无法看到 V 参数中填充了所需的数字。

使用边界提取器,其中匹配号 1 应该足以满足第一次选择,而 0 应该足以满足随机选择。

def TotalInstanceAvailable = vars.get("sCount_matchNr").toInteger()
log.info("Total Instance Available = ${TotalInstanceAvailable}");
def boundary_analyzer =50;
def DesiredNumber,V

if (TotalInstanceAvailable < boundary_analyzer)
{
    log.info("I am inside the loop")
     DesiredNumber = 0;
    log.info("DesiredNumber= ${DesiredNumber}");
    vars.put("V", DesiredNumber)
    log.info("v= ${V}");
}
else{
    DesiredNumber=1;
    log.info("DesiredNumber=${DesiredNumber}");
      vars.put("V", "DesiredNumber")
    log.info("v= ${V}");
}

def sCount = vars.get("sCount")
log.info("Text matching number is ${sCount_matchNr}")
4

1 回答 1

0
  1. 您不能使用vars.put()函数将整数存储在 JMeter 变量中,您需要先将其转换为 String,以更改此行:

    vars.put("V", DesiredNumber)
    

    对这个

    vars.put("V", DesiredNumber as String)
    

    或者,您可以使用vars.putObject()函数,该函数可以存储所有内容,但是您可以通过调用vars.getObject()仅在 JSR223 Elements 中使用该值

  2. 每当您遇到 JMeter 脚本问题时,习惯于查看jmeter.log文件或切换日志查看器窗口 - 在绝大多数情况下,您会在日志文件中找到问题的根本原因:

    JMeter 日志查看器

于 2018-10-23T12:05:33.280 回答