JMeter在特定条件下启用/禁用HTTP请求采样器

时间:2015-04-23 13:13:59

标签: jmeter httprequest

我有一些HTTP请求采样器,我只想在满足某个条件时执行。我所做的是使用以下代码

将BeanShell PreProcessor添加到HTTP请求采样器
if (${getTeamName}.equals("Test Team") == true)
{
    HTTPSampler.setEnabled(false);
}

如果getTeamName的值是测试团队,那么我想禁用该HTTP请求采样器,因为它不必执行。但是看起来目前无效。

有没有人知道我在这里做错了什么,或者建议我应该怎么做?

2 个答案:

答案 0 :(得分:4)

根据JMeter Performance and Tuning Tips指南:

  

但当然要确保您的脚本是必要且有效的, DON' O OVERSCRIPT

为什么不使用If Controller之类的:

  • 如果是控制器,条件:${getTeamName}
    • HTTP请求采样器

如果Test Team将是<style name="myAppTheme" parent="@android:style/Theme.Holo"> <item name="android:windowNoTitle">True</item> <item name="android:windowActionBar">False</item> </style> ,儿童采样器将无法执行。

答案 1 :(得分:1)

使用beanshell时,使用vars.get("VARNAME")

访问变量
if (vars.get("getTeamName").equals("Test Team") == true)
{
     sampler.setEnabled(false);
}