当前位置: 首页 > 面试题库 >

Jmeter:上传Excel,硬编码值

谭嘉容
2023-03-14
问题内容

我已经记录了一个上传excel的场景,在下一个后续请求中,excel中的那些记录将作为参数传递。

但是假设我需要更改excel,该请求将如何采用新值?

由于大量的值,参数化似乎不是答案。

请帮助。


问题答案:

如果需要从Excel文件中提取一些值并将其添加为HTTP请求参数,则可以使用以下方法。

  1. 下载Apache Tika二进制文件(tika-app-*。jar),并将其拖放到JMeter的/ lib文件夹中。如果JMeter正在运行,请重新启动
  2. 将Beanshell PreProcessor添加为请求的子项,您要根据Excel文件值修改哪些参数
  3. 在“脚本”中,是开发代码,该代码读取Excel文件并从中添加值作为HTTP请求参数。下面的示例代码从testfile.xlsx文件的A1和B1单元中提取值,并将其作为“ foo”和“ bar” HTTP请求参数发送。

    import org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy;
    

    import org.apache.poi.ss.usermodel.Cell;
    import org.apache.poi.xssf.usermodel.XSSFRow;
    import org.apache.poi.xssf.usermodel.XSSFSheet;
    import org.apache.poi.xssf.usermodel.XSSFWorkbook;


    import java.io.File;
    import java.io.FileInputStream;

    FileInputStream excelFile = new FileInputStream(new File(“/path/to/excel/testfile.xlsx”));
    XSSFWorkbook workbook = new XSSFWorkbook(excelFile);
    XSSFSheet sheet = workbook.getSheetAt(0);
    XSSFRow row = sheet.getRow(0);
    Cell a1 = row.getCell(0);
    String a1Value = a1.getStringCellValue();
    Cell a2 = row.getCell(1);
    String a2Value = a2.getStringCellValue();

    excelFile.close();

    sampler.addArgument(“foo”,a1Value);
    sampler.addArgument(“bar”,a2Value);

参考文献:

  • Apache POI用户API(HSSF和XSSF)
  • 如何使用POI从Excel文件读取?
  • 如何使用BeanShell:JMeter最喜欢的内置组件


 类似资料:
  • 我试图将youtube视频网址粘贴到tkinter GUI文本框中,并让浏览按钮启动一个子进程调用,该子进程调用需要硬编码的youtube-dl代码,并添加文本框网址。我似乎无法将硬编码的YouTube-dl代码和变量传递到命令行。 谷歌搜索了很多东西来寻找答案,但似乎找不到任何答案。。。 错误代码我在Tkinter回调回溯(最近一次调用上次)中收到异常:文件“C:\Users\hutch\App

  • 如能提供任何协助,将不胜感激。

  • 我正在尝试学习无痛技术,这样我就可以在尝试丰富和操作传入文档时使用它。然而,我看到的每一种访问文档的方法都会导致错误。在基巴纳的无痛实验室输入这些信息后,我得到的错误如下: 尽管测试文档中存在该字段,但仍会抱怨,尽管 确实返回 。 我应该如何访问和操作传入文档?我用的是ElasticSearch 7.12。

  • 目前,我们正在使用Checkmarx扫描应用程序代码。不确定Checkmarx是否检测/扫描源代码中的任何硬编码密码。是否需要在Checkmarx服务器上添加任何额外的配置来检测密码?

  • 我在上传文件时遇到JMeter问题。服务器是ApacheTomcat在比较浏览器和JMeter之间的POST数据时,我发现这一行在JMeter请求内容传输编码中是额外的:二进制的,在通过Fiddler捕获的浏览器请求中没有。 我甚至从Badboy将脚本录制并导出到JMeter,即使如此,我也无法找到解决方案。 有没有办法从JMeter请求中关闭它。或者是由于服务器端代码中的问题。 是否有人遇到过此

  • 我在spark中有一个操作,应该对数据帧中的几列执行。通常,有两种可能来指定这样的操作 hardcode 从colnames列表动态生成它们