我正在使用JMeter,我建立了一个连接oracle并执行查询。
例如,从employee_id
employee
结果是 EMP100
现在我想将结果增加1
(例如 EMP100 至 EMP101 )
并且需要在变量中捕获新的emp_is i,e EMP101并在另一个XML请求中使用此变量。
答案 0 :(得分:0)
如果EMP100
${foo}
中有import java.util.regex.Matcher;
import java.util.regex.Pattern;
String foo = vars.get("foo");
log.info("Original foo variable value: " + foo);
Pattern p = Pattern.compile("(\\d+)", Pattern.CASE_INSENSITIVE | Pattern.DOTALL);
Matcher m = p.matcher(foo);
if (m.find()) {
String postfix = m.group(1);
int oldNumber = Integer.parseInt(postfix);
oldNumber++;
String newNumber = String.valueOf(oldNumber);
foo = foo.replace(postfix, newNumber);
vars.put("foo", foo);
}
log.info("New foo variable value: " + vars.get("foo"));
${foo}
,您可以添加JMeter Variable并使用以下代码:
<?xml version="1.0"?>
<Common>
<Test name="B1">
<Test id="100"><Name>a test</Name></Test>
<Test id="101"><Name>another test</Name></Test>
</Test>
<Test name="B2">
<Test id="500"><Name>a simple test</Name></Test>
<Test id="501"><Name>another simple test</Name></Test>
</Test>
<Test name="B6">
<!-- link to B2 to avoid redundancy -->
</Test>
</Common>
演示:
之后,您应该能够在XML有效负载或其他任何地方使用相同的<Test name"B2">
变量。