【发布时间】:2016-08-31 12:28:13
【问题描述】:
我已通过我的申请中的 xls 文档批量上传过程招收学生。你能解释一下在Jmeter3.0中通过xls文档上传学生详细信息的分步过程吗?
谢谢, 瓦拉穆图。
【问题讨论】:
-
分享你的代码你尝试了什么?
标签: jmeter jmx jmeter-plugins
我已通过我的申请中的 xls 文档批量上传过程招收学生。你能解释一下在Jmeter3.0中通过xls文档上传学生详细信息的分步过程吗?
谢谢, 瓦拉穆图。
【问题讨论】:
标签: jmeter jmx jmeter-plugins
据我所知,JMeter 不提供直接从 xls 上传的采样器。
所以我建议将输入文件转换为 CSV 格式并使用 Config 元素“CSV Data Set Config”。你可以在网上找到很多step-by-step examples。
无论如何,您可以使用Apache Tika 和 BeanShell(sampler,前处理器或后处理器,取决于您的需要和测试计划)读取 xls 文件。
这里是一个使用 HTTP 请求采样器读取 xls 文件(或更通用的二进制文件)的示例:
将 tika-app.jar 文件复制到 jmeter/lib 目录。
重启 JMeter
打开一个 JMeter 测试计划并添加线程组
添加一个“HTTP 请求”采样器。
嵌套到“HTTP请求”添加一个“BeanShell PostProcessor”
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); }
这只是一个关于在 JMeter 中读取 xls 的示例,然后您可以决定从这里开始获得有用的东西。
另请参阅BlazeMeter 或 tech-doing.com 的这些文章
【讨论】: