如何查找 URL 是否包含特定格式然后 运行 执行当前事务
How to find if URL contains specific format and then run execute current transcation
我目前在 JMeter
中有两个事务控制器。如果 ${url}
最后包含 -1,我想执行第一笔交易;如果 ${url}
最后不包含 -1,我想执行第二笔交易。
${url}
是来自CSV数据集配置的变量。基本上它是一个普通的 HTTP URL.
我的 JMeter
测试计划是这样的:
Thread Group
--CSV Data Set config
--Transaction 1
--HTTP request which will execute ${URL}
-- Transaction 2
----HTTP request which will execute ${URL}
现在我可以在每个交易上方添加 If
,但我不确定应该将 If
语句与什么进行比较。
样本URL:
第一个URL-/test/user/editprofile/userid/1234-1
第二个 URL - /test/user/viewprofile/userid/8975
第一个 URL 应该 运行 在第一次交易中,第二个 URL 应该 运行 在第二次交易中。
在 if 控制器中,您可以将以下内容作为条件:
"${__BeanShell('${URL}'.contains('-1'))}"
如果 url contians -1,if 控制器的子控制器将被执行。
然后你需要第二个 if 控制器:
"${__BeanShell(!'${URL}'.contains('-1'))}"
第二个请求。
另一种选择是使用开关控制器,第一个请求作为第一个子节点,第二个请求作为第二个子节点。然后在 post 处理器中,您需要根据结果将变量设置为 0 或 1。
var url = vars.get('URL');
var switch = 0;
if(!url.contains('-1'))
switch = 1;
vars.put('switch', switch.toString());
在开关控制器中使用${switch}作为条件变量。
按如下方式制定测试计划:
- 线程组
- CSV 数据集配置
- 如果控制器 - 条件
"${URL}".indexOf("-1") > -1
- 如果 URL 包含“-1”
则执行采样器
- 如果控制器 - 条件
"${URL}".indexOf("-1") == -1
- 如果 URL 不包含“-1”
则执行采样器
请参阅 How to use JMeter's 'IF' Controller and get Pie guide for more details on using JMeter's IF Controller 到 运行 个基于特定条件的采样器。
我目前在 JMeter
中有两个事务控制器。如果 ${url}
最后包含 -1,我想执行第一笔交易;如果 ${url}
最后不包含 -1,我想执行第二笔交易。
${url}
是来自CSV数据集配置的变量。基本上它是一个普通的 HTTP URL.
我的 JMeter
测试计划是这样的:
Thread Group
--CSV Data Set config
--Transaction 1
--HTTP request which will execute ${URL}
-- Transaction 2
----HTTP request which will execute ${URL}
现在我可以在每个交易上方添加 If
,但我不确定应该将 If
语句与什么进行比较。
样本URL:
第一个URL-/test/user/editprofile/userid/1234-1 第二个 URL - /test/user/viewprofile/userid/8975
第一个 URL 应该 运行 在第一次交易中,第二个 URL 应该 运行 在第二次交易中。
在 if 控制器中,您可以将以下内容作为条件:
"${__BeanShell('${URL}'.contains('-1'))}"
如果 url contians -1,if 控制器的子控制器将被执行。 然后你需要第二个 if 控制器:
"${__BeanShell(!'${URL}'.contains('-1'))}"
第二个请求。
另一种选择是使用开关控制器,第一个请求作为第一个子节点,第二个请求作为第二个子节点。然后在 post 处理器中,您需要根据结果将变量设置为 0 或 1。
var url = vars.get('URL');
var switch = 0;
if(!url.contains('-1'))
switch = 1;
vars.put('switch', switch.toString());
在开关控制器中使用${switch}作为条件变量。
按如下方式制定测试计划:
- 线程组
- CSV 数据集配置
- 如果控制器 - 条件
"${URL}".indexOf("-1") > -1
- 如果 URL 包含“-1” 则执行采样器
- 如果控制器 - 条件
"${URL}".indexOf("-1") == -1
- 如果 URL 不包含“-1” 则执行采样器
请参阅 How to use JMeter's 'IF' Controller and get Pie guide for more details on using JMeter's IF Controller 到 运行 个基于特定条件的采样器。