【问题标题】:Jmeter - restart session after expired continually for 10 hoursJmeter - 连续过期10小时后重新启动会话
【发布时间】:2015-02-26 16:30:05
【问题描述】:

我目前的环境:JMeter v2.11,远程Oracle 12,JDK 7

我有一个要在 Jmeter 中生成的浸泡测试,但我不确定如何做我需要的。

基本上 - 我为 200 个用户在 1 个线程组内登录 Web 应用程序录制了脚本,但我需要保持 10 小时。

http 会话将在 15 分钟后过期,所以我有点迷失如何在 http 会话过期后重新启动会话。我有一个想法,我在线程组上使用了“循环计数”设置,我在谷歌上搜索了一个答案,我在这个论坛上搜索过,但我没有找到任何我能看到的相关内容(虽然我确实发现了一些非常有趣的东西)。

我目前的工作如下:

Thread Group - Number of Threads --> 200, Ramp Up --> 50, Loop Count ---> 1 --HTTP Request Defaults --HTTP Cookie Manager --Recording Controller ---HTTP Request - Login Page Launched ---HTTP Request - Username Input ---HTTP Request - Password Input ---HTTP Request - Login Button selected ---Some listeners

与我之前的帖子一样 - 我非常感谢任何人可以提供的任何指导。

干杯!

【问题讨论】:

    标签: session jmeter session-timeout


    【解决方案1】:

    JMeter 的工作原理如下:

    它在提供的加速期范围内启动所有定义的虚拟用户(线程)。在您的情况下,这意味着 JMeter 在 200 秒内每秒添加 4 个新虚拟用户。

    每个线程都尽可能快地颠倒执行采样器。当采样器完成其工作并且没有更多循环进行迭代时,它将被关闭。

    如果您希望您的场景运行超过 10 小时,请将“循环计数”设置为“永远”,并将线程组级别的“持续时间”指定为 36000 秒,如下图所示:

    在这种情况下,您将有 200 个并发用户在 10 小时内执行定义的采样器。

    另一个指定测试(或特定测试部分)持续时间的选项是使用Runtime Controller

    如果您不需要 200 个并发用户而是每秒 200 个请求,请查看 Constant Throughput Timer 文档。

    JMeter 也作用于协议级别,它实际上并没有在输入或点击按钮中输入任何内容,所以我的期望是您的场景应该如下所示:

    • 打开登录页面 (HTTP GET)
    • 执行登录 (HTTP POST)

    希望这会有所帮助。

    【讨论】:

    • Dmitri T. 谢谢。 @Dmitri T。如果没问题,我有 2 个问题。您在哪里声明“每个线程都颠倒执行采样器”-我以前读过此书,无法想象这意味着什么-您能澄清一下吗?另外——你说“每秒增加 4 个新的虚拟用户,持续 200 秒”——你能解释为什么它运行 200 秒吗?经过思考,我认为它会运行 50 秒,而不是 200 秒,因为 200 是没有。线程。最后-关于您对http方法的评论-是的,我理解,输入的密码/用户名实际上是https帖子。 ta
    • 我根据上述运行了一个测试,但它没有给我我正在寻找的结果,因为它似乎在请求中循环直到持续时间到期。显然,我在最初的问题中并不像我需要的那样清晰/简洁。我将更新原始问题的详细信息。谢谢
    • 我创建了一个新查询,因为我的查询目的现在已经改变,我的问题的答案仍然很丰富。
    猜你喜欢
    • 2020-08-27
    • 1970-01-01
    • 1970-01-01
    • 2016-05-22
    • 2013-06-23
    • 1970-01-01
    • 2011-08-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多