Http headers JMeter:如何从线程组中的每个请求中删除本地HTTP头管理器?

Http headers JMeter:如何从线程组中的每个请求中删除本地HTTP头管理器?,http-headers,jmeter,beanshell,Http Headers,Jmeter,Beanshell,以下是指向图像的链接: 我有每个请求的本地头管理器。我还有一个全球的。[请看图片]我想删除所有请求的本地头管理器 我通过创建一个预处理器并在其中写入“sampler.getHeaderManager().RemoveHeaderName(“HTTP头管理器”);”来尝试它。但是,它不起作用。因此,它无法验证凭据 我还尝试了“sampler.getHeaderManager().remove(0)”。这也不管用。删除(1)忽略全局标头管理器 为“全局”标题管理器指定一个不同的名称 通过工具运行测试

以下是指向图像的链接:

我有每个请求的本地头管理器。我还有一个全球的。[请看图片]我想删除所有请求的本地头管理器

我通过创建一个预处理器并在其中写入“sampler.getHeaderManager().RemoveHeaderName(“HTTP头管理器”);”来尝试它。但是,它不起作用。因此,它无法验证凭据

我还尝试了“sampler.getHeaderManager().remove(0)”。这也不管用。删除(1)忽略全局标头管理器

  • 为“全局”标题管理器指定一个不同的名称
  • 通过工具运行测试。Taurus自然支持JMeter测试执行,并在上面添加了一些额外的特性,例如。假设您的测试名为
    test.jmx
    ,那么相关的Taurus配置文件将非常简单:

    ---
    execution:
      scenario:
        script: test.jmx
        modifications:
          disable: HTTP Header Manager
    
    如果您将其保存为,即
    test.yml
    ,并将Taurus执行为:

    bzt test.yml -gui 
    
    JMeter实例将启动并打开禁用标头管理器元素的脚本

  • 有关该方法的更多信息,请参阅文章

    目前无法以编程方式完全删除测试元素,只能删除单个头。接下来,您可能需要取消勾选下面的
    捕获HTTP头
    框,以避免出现这种情况:


    这是我的建议。在执行以下步骤时必须小心。我遵循这个技巧来替换动态值

  • 对JMeter脚本进行备份

  • 记事本+
    中打开脚本

  • 查找标题管理器标记。事情是这样的

  • 如果您有许多
    头管理器名称
    ,并且其名称是唯一的,则可以在记事本++中使用
    正则表达式

    notepad++

    
    

  • 使用
    查找并替换
    将其替换为
    替换时,请注意
    标记,任何冲突都会导致脚本损坏。使用
    测试计划检查工具
    插件验证您的测试计划。请访问此链接了解更多信息

  • 保存它并在JMeter中打开
  • 之前

    之后

    这是我的技巧。在执行以下步骤时必须小心。如果发生了一些错误,我不负责:)我遵循这个技巧来替换动态值。1.备份JMeter脚本。2.在记事本++中打开脚本。3.查找
    标题管理器
    标记。它是这样的
    4。使用
    Find and Replace
    将其替换为空值。5.保存并在JMeter中打开。@NaveenKumarNamachivayam谢谢。我真的很感激你的回答。但是每个头管理器都有不同的参数值。我无法使用“查找并替换”替换它。这就是为什么我一直在寻找某种方法以编程的方式来实现它。我在谷歌上搜索并尝试了我提到的东西,但没有任何效果。你可以在记事本++中使用
    正则表达式。写起来很简单。:)只要谷歌一下。@NaveenKumarNamachivayam谢谢。成功了。但是,只是好奇而已。你知道它是如何通过BeanShell预处理器完成的吗?因为,我尝试了我在互联网上找到的一切。我不知道我错在哪里。如果我能用BeanShell做那就太好了。让我在BeanShell登记一下。我可以发布我的答案吗?你会接受吗?谢谢非常感谢你的回答。很抱歉打扰您,但我看到一些帖子和博客说要使用“sampler.getHeaderManager().RemoveHeaderName(“HTTP头管理器”);”或“sampler.getHeaderManager().remove(0)”。为什么它不起作用?有什么想法吗?我看过你的评论,你也说过要用这个。你为什么问我而不是问那些写“博客和帖子”的人?您可以通过
    sampler.getHeaderManager().RemoveHeaderName(“内容类型”)删除单个标题,即
    Content-Type
    。通过添加
    sampler.getHeaderManager().RemoveHeaderName(“授权”),可以删除另一个标头,即
    Authorization
    。无法在运行时删除标头管理器。