JMeter将变量设置为随机选项

Pau*_*ker 3 jmeter

我一直在使用JMeter,我知道它__Random__RandomString功能.我需要选择一个随机选项并将其存储在变量中,因为它将用作多个调用的参数路径的一部分.例如:

http://www.example.com/pets/{random option such as: cat, dog, parakeet}/

我试着做一些简单的像这样的,我在那里设置变量${query}one,twothree使用具有用户定义的变量作为儿童随机控制器.这似乎应该可以工作,但我总是${query}设置three.

任何见解或想法都会得到很好的回应.感谢所有提前.

Dmi*_*i T 8

您可以使用Beanshell Pre Processor生成随机值

    String[] query = new String[]{"cat", "dog", "parakeet"};
    Random random = new Random();
    int i = random.nextInt(query.length);
    vars.put("randomOption",query[i]);
Run Code Online (Sandbox Code Playgroud)

之后在您的HTTP请求中

http://www.example.com/pets/${randomOption}
Run Code Online (Sandbox Code Playgroud)

作为替代,String[] query = new String[]{"cat", "dog", "parakeet"};您可以使用Beanshell预定义Parameters节.

    Random random = new Random();
    int i = random.nextInt(query.length);
    vars.put("randomOption",bsh.args[i]);
Run Code Online (Sandbox Code Playgroud)


Den*_*ang 5

我知道这是一篇旧文章,并且有一个新功能可用:

__RandomFromMultipleVars(animalCat|animalDog|animalParakeet, query)
Run Code Online (Sandbox Code Playgroud)

您需要在某个地方定义变量:

animalCat=cat
animalDog=dog
animalParakeet=parakeet
Run Code Online (Sandbox Code Playgroud)