【问题标题】:User pace test mix and constant load pattern用户节奏测试组合和恒定负载模式
【发布时间】:2014-12-29 13:45:19
【问题描述】:

我有一个负载测试,其中包含两个测试。每个测试设置为每个用户每小时 10 次测试。我还有一个恒定负载模式,恒定用户数为 10。我运行测试 1 小时。我希望我的每个测试运行大约 50 次:每小时 10 次测试 *(10 个用户 / 2 个测试)。但是,测试结果显示其中一个测试只跑了 10 次(平均测试时间 1989 秒),而另一个测试只跑了 21 次(平均测试时间 131 秒)。我做错了什么?

【问题讨论】:

    标签: visual-studio-2013 performance-testing load-testing


    【解决方案1】:

    1989 秒大约是 33 分钟,这意味着虚拟用户需要 66 分钟进行两次迭代。所以这个测试不可能以每个用户每小时 10 次的速度运行。

    其他测试的 131 秒提供了每小时进行 (1 小时)/(131 秒) 测试的可能性,即 1*60*60/131 大约为 27。因此,此测试可以以每个用户每人 10 次运行小时;事实上,它的运行速度几乎可以达到这个速度的三倍。

    您不能将单个测试设置为按步调运行。步调适用于场景中的所有测试。

    1989 秒的 10 次执行加上 131 秒的 21 次执行,总共是 10*1989+21*131 秒,即大约 6 小时 17 分钟。让 10 个虚拟用户运行 1 小时可提供 10 小时的总执行时间。测试结果中显示的测试执行次数不包括在测试期结束时放弃的任何未完成测试。因此,当测试完成时,十个虚拟用户中的每一个都可能很忙。这些不计其数的测试加上短暂的测试执行之间的暂停很容易解释 6h17m 和 10h 之间的差异。

    步调的影响可能意味着在运行 131 秒的测试后,虚拟用户会暂停,直到每小时执行 10 次中的下一次。因此,每个 131 秒的测试之后都会有一个(1 小时)/(每小时 10 次执行)-(131 秒)暂停,即 60*60/10-131 = 360-131 = 219 秒。

    根本问题似乎是其中一项测试与指定的起搏率不兼容。要查看每个测试的执行方式和时间,请查看结果中的“详细信息”页面。您可以展开底部的滑块以查看整个测试持续时间,或专注于其中的部分。您还可以调整左上角窗格中的过滤器以显示/隐藏单个测试,也可以突出显示失败的测试。研究“详细信息”页面应该清楚地向您展示哪些虚拟用户运行了哪些测试以及 Visual Studio 如何尝试使用给定的起搏指令。

    【讨论】:

    • 谢谢你,这很有帮助。我没有意识到虚拟用户活动图表有滑块。该图表似乎是空的,所以我假设没有为 vuser 收集数据。事实上,正确的滑块是最小的!我现在可以明白您所说的一个测试太长以至于没有足够的时间再次运行它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-07
    • 1970-01-01
    • 1970-01-01
    • 2014-08-15
    • 2017-03-02
    • 1970-01-01
    相关资源
    最近更新 更多