如何控制没有。 Jmeter中每个用户的请求数

时间:2017-03-27 18:32:39

标签: jmeter jmeter-plugins

我正在为一个电子商务网站进行负载测试。我正在使用Ultimate thread group

现在我想每个用户只发送1个请求。所以对于ex:如果500个用户那么只有500个请求应该发送。如何使用Ultimate thread group实现它?

为什么我要上面因为我正在做整个过程,如登录,选择产品,添加到购物车和结帐。所以它应该每个用户只做一次。

3 个答案:

答案 0 :(得分:1)

让我们说测试的持续时间是1小时。第一个用户完成您在前10分钟内提到的工作流程。在用户的工作流程之后应该发生什么?该线程应该在剩余的50分钟内空闲吗?

我认为你应该使用常规Thread Group 500线程和循环计数为1. Ultimate Thread Group用于基于持续时间的测试。您可以使用Once Only Controller作为解决方法,仅对用户执行一次操作。但这是一种丑陋的方法。

答案 1 :(得分:1)

您的测试设计有点不稳定,因为每个用户都登录,选择产品,添加到购物车并结帐,每个用户至少会有4个请求,总共提出2000个请求(不包括嵌入式资源)调用)。您可以使用Transaction Controller将这些请求分组到一个"工作流程"但它不会限制实际的请求数量。

通常,网络测试计划应如下所示:

  • 鉴于每个用户执行测试场景步骤并像真实用户一样行事
  • 逐渐增加用户数量,除非应用程序响应时间过长或错误开始发生,无论第一个是什么
  • 分析结果,找出瓶颈,报告您的发现

答案 2 :(得分:-1)

您可以使用Throughput Controller

  

吞吐量控制器允许用户控制执行的频率。有两种模式:

  • 执行率
  • 总执行次数

执行百分比 导致控制器通过测试计划执行一定比例的迭代。

总执行次数 导致控制器在执行了一定数量的执行后停止执行。 与Once Once Controller一样,当父Loop Controller重新启动时,此设置将被重置。