【问题标题】:How can I upload xls file in jmeter?如何在 jmeter 中上传 xls 文件?
【发布时间】:2016-08-31 12:28:13
【问题描述】:

我已通过我的申请中的 xls 文档批量上传过程招收学生。你能解释一下在Jmeter3.0中通过xls文档上传学生详细信息的分步过程吗?

谢谢, 瓦拉穆图。

【问题讨论】:

  • 分享你的代码你尝试了什么?

标签: jmeter jmx jmeter-plugins


【解决方案1】:

据我所知,JMeter 不提供直接从 xls 上传的采样器。

所以我建议将输入文件转换为 CSV 格式并使用 Config 元素“CSV Data Set Config”。你可以在网上找到很多step-by-step examples

无论如何,您可以使用Apache Tika 和 BeanShell(sampler,前处理器或后处理器,取决于您的需要和测试计划)读取 xls 文件。

这里是一个使用 HTTP 请求采样器读取 xls 文件(或更通用的二进制文件)的示例:

  • 下载 tika-app.jar(JMeter 3.0 使用版本 1.12 tika-app-1.12.jar
  • 将 tika-app.jar 文件复制到 jmeter/lib 目录。

  • 重启 JMeter

  • 打开一个 JMeter 测试计划并添加线程组

  • 添加一个“HTTP 请求”采样器。

    • 将“协议[http]”字段设置为“文件”。

    • 将“路径”字段设置为您的文件路径名(例如 /mypath/Students.xlsx )

  • 嵌套到“HTTP请求”添加一个“BeanShell PostProcessor”

    • 在“脚本”区域添加以下代码(假设在此示例中您的 xls 文件有一个工作表“Sheet1”,三列,第一行作为标题);它读取文件并设置 A1、B1、C1 jmeter 变量:
import org.apache.jmeter.threads.JMeterVariables;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

try {

   InputStream in = new ByteArrayInputStream(data);
   Workbook wb = new XSSFWorkbook(in);
   in.close();
   Sheet sheet1 = wb.getSheet("Sheet1");
   Row row = sheet1.getRow(1);
   Cell a1 = row.getCell(0);
   Cell b1 = row.getCell(1);
   Cell c1 = row.getCell(2);
   vars.put("A1", a1.getStringCellValue());
   vars.put("B1", b1.getStringCellValue());
   vars.put("C1", c1.getStringCellValue());
}

catch (Throwable ex) {
   log.error("Failed ", ex);
}

  • 在“HTTP Request”Sampler 下方,在同一级别,添加“Debug” 采样器和“查看结果树”以查看变量(A1、B1、C1)

这只是一个关于在 JMeter 中读取 xls 的示例,然后您可以决定从这里开始获得有用的东西。

另请参阅BlazeMetertech-doing.com 的这些文章

【讨论】:

  • 感谢您提供此解决方案
猜你喜欢
  • 2016-08-29
  • 2018-07-11
  • 2019-01-24
  • 2012-08-11
  • 2011-11-17
  • 1970-01-01
  • 2022-01-23
  • 1970-01-01
  • 2016-12-30
相关资源
最近更新 更多