java - 在Jmeter中使用Java参数化XML标签

标签 java scripting jmeter

我是 JMeter 的新手。我想知道如何在Jmeter中使用Java。

描述:我们尝试在 WebService(SOAP) 请求的请求 XML 中参数化一些输入,例如用户名、出生日期、电话号码等,以进行负载性能测试。这些值是从 Java 程序中随机生成的。我们需要从 Java 程序中选取这些值并通过参数化插入到请求 XML 中。

我需要知道如何通过使用任何函数助手或任何脚本在 JMeter 中实现此目的?

我尝试过的事情:我正在使用 Jmeter 2.8 版本。我尝试过 CSV 数据集配置、用户定义变量来参数化 XML,效果很好。但这些是一些静态数据,存储在 Excel 工作表中或预先定义。

我想知道如何使用 Java 程序中随机生成的值来参数化请求 XML。如果您能提供实现此目标的任何示例,那将非常有帮助。

提前致谢

最佳答案

有几种方法可以帮助您完成工作:

  1. 最简单的一个:JMeter OS Process Sampler 。只需根据需要多次调用 Java 应用程序,通过 Beanshell 或 Regular Expression Extractor 获取存储输出数据到变量后处理器。
  2. 较难的一个:如果您的随机逻辑足够简单,您可以使用 Beanshell、BSF 或 JSR233 预处理器在 JMeter 中复制它(您需要使用 bsf、jexl、beanshell 或 java 编写一些代码)
  3. 最难的一个(但从性能角度来看是最佳的:如果您的 Java 有一些公共(public)导出函数,可以调用这些函数来获取随机值,您可以将 .jar 拖放到 JMeter 安装的/lib/ext 文件夹中,重新启动 JMeter 并是否从 Beanshell 调用所需的方法,或者编写自定义 Java 请求,甚至是 Sampler(例如,请参阅 SleepTest java request sampler source code)

关于java - 在Jmeter中使用Java参数化XML标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20287895/

相关文章:

java - 在 javacv 中将 IplImage 转换为 Mat

java - 更改 java 符号链接(symbolic link)

java - 使用 Java 8 自定义 map 的过滤和翻译功能

linux - 根据时间启动和终止进程

linux - Jmeter 执行脚本但提供空白报告

java - 获取 API 请求在 Jmeter 中无法使用 "+"符号

java - 访问修饰符有什么用

linux - 我想使用 "awk"或 sed 打印文件中所有以 "comm="开头的行

linux - 如何使用 paste(1) 排列列?或者如何在 shell 中制作对齐的表格合并线?

java - 无法让自定义监听器显示在 JMeter 的“添加”->“监听器”菜单中