我的脚本有很多动态变化的变量,我需要对它进行大量参数化。有什么方法可以自动化或最小化参数化。我正在使用CSV&用于参数化的正则表达式。还有其他方法吗? 提前谢谢。
答案 0 :(得分:0)
除了将参数作为测试输入的CSV文件外,您还可以将输入变量定义为属性。例如,如果在测试计划的“用户定义变量”部分中定义了 customProperty (测试计划,Jmeter方案中的前1个元素,而不是用户定义的变量示例),则可以访问此值通过 $ {__ P(customProperty)} 在任何地方(甚至在不同的线程中)。
在这种情况下,您应该按以下方式启动Jmeter:
jmeter.bat -D customProperty = customValue -t path \ to \ your \ jmeter \ scenario.jmx(适用于Windows机器)。
它对自动化目标非常有用(例如,如果Jmeter由调度程序使用-n选项运行)。
如果您的参数是在测试中生成的,并且您只是想在不同的线程之间传递它们而不将其存储在文件中,那么属性也很有用。与用户定义变量(基于每个线程处理)相反,可以从任何线程访问存储为属性的值。
你是如何做到的:
运行初始请求。
使用正则表达式提取器从响应中提取变量。
使用BeanShell Sampler中的以下代码将提取的值设置为属性:$ {__ setProperty(q,$ {q})};
在任何地方使用$ {__ P(q)}。