使用 jmeter 单击电子邮件验证 link

Clicking an email verification link using jmeter

我在 jmeter 中有一个测试计划执行以下操作:

  1. 使用邮件 reader 采样器从 gmail 帐户中检索电子邮件。

  2. 使用正则表达式提取器获取验证电子邮件 link 并将其设置为变量

1-3 工作正常我遇到的问题是当我收到验证邮件 link 它也捕获协议 https:// 所以一旦我尝试使用 HTTP 采样器来获取 link 我得到 http://"https:后跟 url.

我如何从我的正则表达式中排除 http: 协议,或者是否有另一个采样器可以用来点击 link

我正在解析的响应: href="https://qa4.iqnavigator.com/routing/YTMzYThjYzctNjIyNy00MWRmLTlhOGItOTdiNWVjMDY1YWFm">

我使用的正则表达式:"([^"]+?)" 捕获的内容:https://qa4.company.com/routing/YTMzYThjYzctNjIyNy00MWRmLTlhOGItOTdiNWVjMDY1YWFm

任何想法

我相信您的问题的解决方案是谨慎使用字符分组和 JMeter 的正则表达式提取器的 "template" 功能。

例如,这个正则表达式:

https://([^/]*)/

使用模板:

$

这将匹配 url,但不包括 "https://" 部分或主机后的路径,在 JMeter 存储的实际变量中。这只会存储主机本身,在您的示例中 "qa4.iqnavigator.com".

另一个例子,假设您只想提取路由 ID,但您不确定它是 http 还是 https:

href=".*://qa4.iqnavigator.com/routing/([^"]*)"
Template:  $

更多详情,

如果我可以尝试进一步澄清,请告诉我。