gpt4 book ai didi

JMeter:什么是用于负载测试 REST API 的良好测试结构?

转载 作者:行者123 更新时间:2023-12-03 20:59:24 25 4
gpt4 key购买 nike

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

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

2)JMeter在计算Sample Time(Response Time)的时候,是否也包含了BeanShell Processors所花费的时间?

3) 在每个 Simple Controller 中放置一个 Listener 是个好主意吗?我正在使用 JMeter 插件进行报告。我想查看每个端点的报告。

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

我正在使用如下结构在 JMeter 中创建测试计划。 enter image description here

最佳答案

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

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

2) 它不包括 beanshell 预处理和后处理时间。 (但是如果使用beanshell采样器,就看代码了)

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

关于JMeter:什么是用于负载测试 REST API 的良好测试结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18990303/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com