首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Jmeter中生成并发用户负载

如何在Jmeter中生成并发用户负载
EN

Stack Overflow用户
提问于 2012-04-17 19:36:33
回答 1查看 13.2K关注 0票数 11

我有一个测试,用户将登录并在搜索字段中输入搜索关键字,并将获得结果。最后注销。

现在我想使用Jmeter测试并发性。这就是我想出来的。

代码语言:javascript
复制
Test plan
  Thread group
  + Login request
    + Synchronizing Controller
  + Search string 
    + Synchronizing Controller
  + Logout 

我已经添加了10个线程的数量。我已经在同步控制器中添加了5。那么,当我运行测试时,我会得到5个用户的并发吗?其余5个用户将是同时使用的用户?

此外,我有依赖的请求时,登录页面加载。因此,为了在登录时实现并发,我在事务控制器中添加了所有请求,并将同步控制器作为子级添加到事务控制器中。如果我做得对,请让我知道。

另外,请让我知道是否有其他方法来实现并发的具体行动(例如:5个用户同时点击登录按钮)。

EN

回答 1

Stack Overflow用户

发布于 2012-04-17 20:58:32

首先,你应该试着区分“并发”和“同时”。它们通常是非常相似的术语,但在负载测试中,它们具有不同的含义。同时表示同时有两个或更多的请求。并发是两个或多个并行运行的线程(脚本)。

因此,您正在讨论的是尝试配置JMeter以模拟多个并发请求。但实际上,有一种比这更好的方法。在JMeter中,您应该将测试设置为您希望应用程序支持的负载类型的真实表示,而不是专注于同时尝试命中相同的请求。如果你做得很好,使用随机等待时间,吞吐量控制器和实际的线程数量,那么你将自动测试并发性,同时也运行真正的,有效的和有用的性能测试。

因此,基本上,删除同步计时器,改为使用恒定吞吐量计时器,配置等待时间,然后计算正确的线程数量以生成所需的负载。

这种方法的额外好处是您将不太可能引发假阴性。例如,如果您的服务器同时有5个登录请求,那么您可能会发现此调用是单线程的,响应时间会增加。但也许这无关紧要,也许同时进行两个登录调用的可能性太小,不值得花费时间更改代码。这是负载测试中一个非常非常重要的概念--也许是最重要的--你必须有现实的目标,如果没有这些目标,你可能会运行测试,发现错误的bug,通常会永远浪费时间。

票数 17
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10190455

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档