JMeter RegUx用户参数未添加参数

JMeter RegUx用户参数未添加参数,jmeter,Jmeter,我是JMeter的新手,我可能遗漏了一些简单的东西,但我在任何地方都找不到 我正在尝试登录web应用程序,因此我向主页发送GET请求以检索csrf令牌,然后使用正则表达式提取器检索它: 然后,我尝试将提取的令牌放入POST请求: 但是提取的令牌不会显示在通过查看结果树发送的请求中。仅传递我手动定义的用户ID和密码: 我的正则表达式正在查找匹配项,您可以在此处看到: 但即使它没有找到匹配项,它也应该通过NotFound correct 非常感谢您的帮助 编辑:添加了一个调试采样器,它正确地显

我是JMeter的新手,我可能遗漏了一些简单的东西,但我在任何地方都找不到

我正在尝试登录web应用程序,因此我向主页发送GET请求以检索csrf令牌,然后使用正则表达式提取器检索它:

然后,我尝试将提取的令牌放入POST请求:

但是提取的令牌不会显示在通过查看结果树发送的请求中。仅传递我手动定义的用户ID和密码:

我的正则表达式正在查找匹配项,您可以在此处看到: 但即使它没有找到匹配项,它也应该通过NotFound correct

非常感谢您的帮助


编辑:添加了一个调试采样器,它正确地显示了具有正确值的变量标记。因此,令牌不会通过RegEx用户参数预处理器添加到请求中。

如果不查看登录页面步骤,很难看到您正在做什么,但您需要确保您正在正确的位置添加提取的csrf令牌。 通常,它可以作为查询参数、post正文的一部分或http头

正如您在调试采样器中看到的,令牌是从您的初始响应中提取的,令牌应用于LoginPage请求的方式或位置一定有问题。正如您所说,RegEx用户参数Pre-Processor没有添加它

我从未使用过预处理器,Jmeter文档对它的功能的解释有点含糊不清,但是您可以将变量添加到请求中,而无需使用为捕获组保存的变量-对于输入名称,这将是${Token_g1},对于值,这将是${Token_g2}-您可以从调试采样器中看到。如果这是令牌所在的位置,则需要向登录页面元素添加标题或Cookie管理器

通过将提取器中的模板设置为$1$$2$,可以创建一个名称和值连接在一起的变量。我不确定您为什么需要这个,我猜名称不会改变-在这种情况下,您可以使用捕获组2,或者如果您想使用变量名令牌,那么请将模板更新为$2$

${Token\u g1}和${Token\u g2}是我正在寻找的,谢谢!然后我甚至不需要预处理器正则表达式的东西。。。我不知道这有什么意义。