Jmeter组件5. 逻辑控制

时间:2024-05-18 16:35:38

逻辑控制组件也有不少,但是用到的情况也不多,只打算举个While controller结合Regular Expression Extractor的例子

Jmeter组件5. 逻辑控制

Condition,跳出循环的条件

如果放空,则出错了之后才会跳出循环,放LAST也一样,不过放LAST多一种情况是,上一个Sampler如果出错,则不进入循环

以下是这里可以放的参数的一些例子

  • ${VAR} - where VAR is set to false by some other test element  参数True or False
  • ${__javaScript(${C}==10)}   Java Script,计算的时候需要用
  • ${__javaScript("${VAR2}"=="abcd")}          字符串的比较时,需要将变量也用引号括起来
  • ${_P(property)} - where property is set to "false" somewhere else

举例,测试网址为http://evening-citadel-2263.herokuapp.com/

第一页为http://evening-citadel-2263.herokuapp.com/1,第n页为http://evening-citadel-2263.herokuapp.com/n,依次类推

Jmeter组件5. 逻辑控制

第一个请求,获得了next参数,然后用到第一个while循环中去

Jmeter组件5. 逻辑控制

Jmeter组件5. 逻辑控制

while循环的跳出条件用的是${__javaScript(${next}<7)},意思是我从第一页翻到第六页

第一个while循环结束后,又来一个单独的请求,获得prev这个参数,前一页,不过此时已经往前翻了一页,用的是next-2作为页码

Jmeter组件5. 逻辑控制

Jmeter组件5. 逻辑控制

第二个while循环的跳出条件为${__javaScript("${prev}"!="NOT FOUND")},如果有前一页就一直往前翻