Jmeter:随机从文件中提取路径

Jmeter: Pull paths from file at random

我正在为某些网页构建 load/stress 测试。我有一个具有基本服务器名称的 HTTP 请求默认设置。我想使用随机控制器和 HTTP 请求来随机检查所有页面,但我不想创建 150 个 HTTP 请求,每个请求都有一个唯一的路径。我宁愿有一个从文件中随机提取路径的 HTTP 请求。

我描述的可能吗?谁能指出我正确的方向?

我重新措辞了我的搜索,发现这是不可能的。我想我要听取另一个论坛的建议并随机化我的文件来实现这一点。似乎是最简单的解决方案。

事实上这是可能的。一切皆有可能。对于 JMeter,您需要编写一些脚本。

给定以下测试计划结构:

  • 设置线程组

    • Beanshell 采样器

      import org.apache.commons.io.FileUtils;
      
      List lines = FileUtils.readLines(new File("/path/to/your/file"));
      bsh.shared.lines = lines;
      
  • 线程组

    • HTTP 请求采样器,路径:${randomline}

      • Beanshell 预处理器

        List lines = bsh.shared.lines;
        Random rnd = new Random();
        vars.put("randomline", lines.get(rnd.nextInt(lines.size())));
        

可以使用文件中的随机 URL 作为 HTTP 请求路径。

解释:

在需要时将生成的随机行引用为 ${randomline}

有关 JMeter 中的 Beanshell 脚本和一种 Beanshell 食谱的更多信息,请参阅 How to Use BeanShell: JMeter's Favorite Built-in Component 指南。