如何在Jmeter结果Assert中忽略时间戳?如何在Jmeter结果Assert中忽略时间戳如何在Jmeter结果Assert中忽略时间戳如何在Jmeter结果Assert中忽略时间戳如何在Jmeter结果Assert中忽略时间戳ok
sxpgvts31#
如果我们不知道你的响应是什么样子的,我们就不能提供一个关于如何在Jmeter结果Assert中忽略时间戳的全面答案。响应Assert有几种模式:x1c 0d1x的数据
Substring
Equals
Matches
Contains
因此,如果你想从模式中排除时间戳,你需要找到一个合适的regular expression,它将匹配你正在寻找的数据,并忽略时间戳。更多信息:How to Use JMeter Assertions in Three Easy Steps的
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)
actualTimestamp
fixedTime
Response Assertion
2023-07-31T01:02:03Z
(\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}Z)
2条答案
按热度按时间sxpgvts31#
如果我们不知道你的响应是什么样子的,我们就不能提供一个关于如何在Jmeter结果Assert中忽略时间戳的全面答案。
响应Assert有几种模式:
x1c 0d1x的数据
Substring
-检查响应是否包含模式Equals
-检查响应是否等于模式Matches
-检查响应是否与模式匹配Contains
-检查Matcher.find()函数是否能够找到与响应中提供的模式匹配的内容因此,如果你想从模式中排除时间戳,你需要找到一个合适的regular expression,它将匹配你正在寻找的数据,并忽略时间戳。
更多信息:How to Use JMeter Assertions in Three Easy Steps的
w8f9ii692#
忽略Jmeter中的时间戳是不容易的。这可以通过采取其他方法来实现。
This link提供了如何提取正则表达式以从HTTP响应中捕获时间戳的示例。然后,您应该添加JSR223 PostProcessor,以使用如下固定字符串替换timestamp
字符串
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)