如何在Jmeter结果Assert中忽略时间戳?

gcuhipw9  于 2023-08-05  发布在  其他
关注(0)|答案(2)|浏览(80)

如何在Jmeter结果Assert中忽略时间戳?
如何在Jmeter结果Assert中忽略时间戳如何在Jmeter结果Assert中忽略时间戳如何在Jmeter结果Assert中忽略时间戳如何在Jmeter结果Assert中忽略时间戳ok

sxpgvts3

sxpgvts31#

如果我们不知道你的响应是什么样子的,我们就不能提供一个关于如何在Jmeter结果Assert中忽略时间戳的全面答案。
响应Assert有几种模式:
x1c 0d1x的数据

  • Substring-检查响应是否包含模式
  • Equals-检查响应是否等于模式
  • Matches-检查响应是否与模式匹配
  • Contains-检查Matcher.find()函数是否能够找到与响应中提供的模式匹配的内容

因此,如果你想从模式中排除时间戳,你需要找到一个合适的regular expression,它将匹配你正在寻找的数据,并忽略时间戳。
更多信息:How to Use JMeter Assertions in Three Easy Steps

w8f9ii69

w8f9ii692#

忽略Jmeter中的时间戳是不容易的。这可以通过采取其他方法来实现。
This link提供了如何提取正则表达式以从HTTP响应中捕获时间戳的示例。然后,您应该添加JSR223 PostProcessor,以使用如下固定字符串替换timestamp

String resp = prev.getResponseDataAsString();
String timestamp = vars.get("actualTimestamp");
resp = resp.replace(timestamp, "fixedTime");
vars.put("modifiedResponse", resp);

字符串
actualTimestamp是用于存储响应的实际时间戳的变量。
actualTimestamp是用于替换响应中的时间戳的占位符
actualTimestamp,用于存储其中时间戳已被fixedTime替换的新版本的响应。
您确实可以为它们选择不同的名称。它们不是预定义的。
稍后,将Response Assertion应用于modifiedResponse,因此响应将包含fixedTime,而不是实际的时间戳(actualTimestamp)。
下面是匹配时间戳的正则表达式
捕获2023-07-31T01:02:03Z(\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}Z)

相关问题