如何创建负载分配方案?在JMeter

时间:2012-10-23 02:36:32

标签: jmeter beanshell

目前我正在研究jmeter中的负载分配方案 我的测试计划结构如下:


TestPlan
BeanShell Preprocessor (here I have below code)

    Integer totalLoad = 0;
    Integer searchUsers = 0;
    Integer createUseres = 0; 

    totalLoad = Integer.parseInt (vars.get("TOTALUSERS")); 
    searchUsers = ((totalLoad / 100) * 40);  createUseres =((totalLoad / 100) * 10);  guestUsers = ((totalLoad / 100) * 50);

    vars.put("searchUsers", searchUsers.toString());
    vars.put("createUseres", createUseres.toString());
    vars.put("guestUsers", guestUsers.toString()); 

Thread group: Search (I am using ${searchUsers} in the number of Threads(users) field) 
Thread group: Create (I am using ${createUseres} in the number of Threads(users) field) 
Thread group: Guest (I am using ${guestUsers} in the number of Threads(users) field) 

这对我不起作用。
你能帮忙吗?

1 个答案:

答案 0 :(得分:1)

JMeter变量是每个线程的本地变量。因此,如果您将在预处理器中创建这些变量,则此级别的其他线程将无法访问它们。

您应该使用属性来放置/获取searchUserscreateUseresguestUsers,如:

在BeanShell预处理器中使用props.put("guestUsers", guestUsers.toString());。使用${__P(searchUsers)}作为线程组中的线程数。

相关问题