【问题标题】:Jmeter concurrent user load Test PlanJmeter并发用户负载测试计划
【发布时间】:2017-03-22 21:22:08
【问题描述】:

我是 Jmeter 的新手。我的项目经理告诉我要测试 100 个并发用户的网站负载。

考虑加载测试的网站的以下功能-

  1. 用户注册

    • 获取注册页面请求
    • 发布注册页面请求
  2. 登录和用户配置文件导航

    • 获取登录页面请求
    • 登录后页面请求
    • 获取用户仪表板请求
    • 获取编辑个人资料页面请求
    • 获取更改密码请求
    • 获取邀请好友页面请求

我的测试场景是 50 个并发用户访问 Registration 页面和其他 50 个并发用户访问 User profile(登录、仪表板等)。 我已经为此创建了以下测试计划 -

注册和登录的线程配置与-

线程总数:50

加速期:600 秒

保持负载持续时间:3600 秒

为两个线程组请求配置的常量计时器(每个请求延迟 200 毫秒)还添加了一些用于收集结果的侦听器。我有以下问题-

  1. 将这些请求包含在测试计划中以对我的网站进行完整的负载测试是否正确?

  2. 我是否配置了正确的线程属性或者我还能做些什么来达到最佳效果?

【问题讨论】:

    标签: performance jmeter performance-testing load-testing


    【解决方案1】:
    1. 思考时间

      您的测试计划看起来不错,但是当前配置不代表 100 个并发用户,因为 200 毫秒认为时间是“超人”的时间。真实用户在操作之间“思考”的时间更长,并且应该根据模拟请求的性质而有所不同。所以我建议使用个人Uniform Random Timers 和每个请求的相关思考时间范围。

    2. 从“现实”的角度进行整体测试设计

      如果你有一些额外的时间,你可以考虑在你的模拟中加入更多的现实,比如:

      • X 用户进行注册
      • Y 用户正在编辑他们的个人资料
      • Z 用户邀请好友
      • 等。

      因此分发将代表您的应用程序的正常预期使用情况。您的负载测试应该尽可能真实,只有这样您才能确定“我的应用程序能够支持这么多用户提供合理的响应时间”。看看Throughput Controller

    3. 整体表现

    【讨论】:

    • @Dimitri T,非常感谢您的回答。我错误地将常数计时器写为 200 毫秒,尽管它是 2000 毫秒。我为每个请求添加了配置“随机延迟最大值 = 2000 毫秒”和“恒定延迟偏移 = 5000”的“统一随机时间”。到目前为止,我知道,它为 2000-7000ms 之间的每个请求增加了延迟。我上面配置的线程组的设置是否正确?
    • 您的新配置意味着在每次请求之前延迟 5000 - 7000 毫秒,如果您正在寻找 2000-7000 那么您需要将恒定延迟设置为 2000 并将随机延迟设置为 5000,请查看A Comprehensive Guide to Using JMeter Timers详细解释。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-28
    • 2012-07-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多