在JMeter中使用include控制器

时间:2017-10-20 06:18:26

标签: jmeter

我有一个记录测试,包括2页登录页面和另一个。我在include控制器中创建了登录页面,在简单控制器中创建了另一个页面。我想知道,如果我为2个用户运行测试,那么登录页面将在结果树监听器中显示多长时间。我想将我的测试结果树作为一个登录和多个请求到另一个页面。这可能吗?

2 个答案:

答案 0 :(得分:0)

注意:包含问题似乎与实际问题无关

假设您希望每个用户登录,并且每个登录用户执行5个操作(示例),您只需要一个线程组。

  • 线程组(适当地定义所需的线程/循环)
    • Config managers设置Cookie /标头/缓存管理
    • CSV data set定义所有用户相关值
    • 登录
    • 行动1
    • 行动2
    • 行动3
    • 行动4
    • 行动5
    • 注销

对于CSV中的非常输入,将执行这些操作。 CSV模块的配置将定义最后一个用户执行后的操作(例如停止或重复)。

答案 1 :(得分:0)

如果您只需要执行登录,则可以执行以下操作:

  1. 添加If Controller而不是Include Controller并使用以下条件:

    ${__groovy(ctx.getThreadNum() == 1 && vars.getIteration() == 1,)}
    
  2. 将“登录”请求置于If Controller

  3. 这样“登录”请求将仅在第一次循环期间执行,并且仅由第一个虚拟用户执行。

    请注意其他虚拟用户不会登录。如果您需要在每个虚拟用户后执行登录,请考虑使用Once Only Controller