3

我正在使用 JMeter 对一堆 API(例如用户服务、播放器服务等)进行负载测试(基线、容量、寿命)。这些服务中的每一个都有几个端点(例如,创建、更新、删除等)。我试图找出一种在 JMeter 中组织我的测试计划的好方法,以便我可以对所有这些服务进行负载测试。

1) 为每个 API 创建单独的 JMeter 测试计划 (jmx) 是否是个好主意,而不是创建一个 JMeter 测试计划并添加线程组,例如“用户服务的线程组”、“播放器服务的线程组”、 ETC?我正在考虑为每个 API 添加一个测试计划,然后为不同类型的负载测试(基线、容量、寿命等)添加几个线程组。

2)JMeter在计算Sample Time(响应时间)时,是否也包括了BeanShell Processors所用的时间?

3)在每个简单控制器中放置一个监听器是个好主意吗?我正在使用 JMeter 插件进行报告。我想查看每个端点的报告。

任何或所有问题的答案将不胜感激:)

我正在使用如下结构在 JMeter 中创建测试计划。 在此处输入图像描述

4

1 回答 1

0

1)我喜欢一个看起来像一个测试套件的测试计划。JMeter 有多种分离组件和测试需求的方法,因此很难设置规则。一个测试计划可能比多个测试计划更有效,并且可以配置为满足大多数要求。我发现计划之间可能有很多重复,这通常意味着在不同的地方维护相同的代码。最好在同一计划中使用模块和包含来减少代码重复,但包含是等效的,可以与测试片段一起使用以减少重复。

线程组最好用作用户组,但可以以任何您喜欢的方式用于分隔测试。考虑不同页面/站点所需的缩放。即用户/管理员测试可以在不同的线程组中完成,因此您可以同时模拟 50 个用户和 2 个管理员测试。或者您可以区分前端/后端甚至页面/站点。

2) 它不包括 beanshell 预处理和后处理时间。(但如果你使用 beanshell 采样器,这取决于代码)

3)听众很贵,所以越少越好。要分离结果,您可以为每个采样器指定不同的标题,然后侦听器/图表可以根据需要对它们进行分组。您可以使用变量、属性和 ${__javaScript} 等将时间戳或索引作为采样器标题的一部分。这将根据您选择的实现或多或少地进行分组。

于 2014-10-14T01:37:15.540 回答