Locust学习记录2-locust用户类属性【HttpUser,wait_time,weight和fixed_count】
创始人
2024-03-20 18:43:03
0

HttpUser

每个模拟用户定义的类,都必须继承HttpUser,目的时为每个用户提供一个client属性,该属性是一个实例HttpSession,可用于向我们要进行负载测试的目标系统发出HTTP请求

当测试开始时,locust将为它模拟的每个用户创建一个此类的实例,并且每个用户都将开始再他们自己的绿色gevent线程中运行

要使文件成文有效的locustfile,它必须至少包含一个继承自User

wait_time

用法一:

示例:wait_time = between(1,5)

释义:模拟用户在每个任务执行后等待1到5秒的时间

用户的wait_time方法可以很容易的每次执行任务执行后引入延迟。如果没有指定wait_time,则下一个任务将在完成后立即执行

constant在固定的时间内

between在最小值和最大值之间的随机事件

constant_throughput确保任务每秒运行(最多)X次的自适应时间

constant_pacing自适应时间确保任务(最多)每X秒运行一次(它是constant——throughput的数学倒数)

用法二:

示例:

        如果您希望Locust在峰值负载下每秒运行500次任务迭代,您可以使用wait_time=constant_throughput(0.1)和5000的用户计数

        等待时间只能限制吞吐量,不能启动新用户来达到目标。因此,在我们示例中,如果任务迭代时间超过10秒,吞吐量将小于500

        等待时间是在任务执行后应用的,因此如果您的生成率/提升率很高,您可能会在提升期间超过目标

        等待时间适用于任务,而不是请求。例如,如果您指定wait_time=constant_throughput(2)并在您的任务执行两个请求,则您的请求率/PRS 将为每个用户4个

用法三:

可直接在类上声明自己的wait_time方法。

例如,下面的User类会休眠一秒,然后两秒,然后三秒,以此类推

class MyUser(User):last_wait_time = 0def wait_time(self):self.last_wait_time += 1return self.last_wait_time...

weight属性

如果文件中存在多个用户类别,并没有在命令行中指定用户类别,Locust将生成相同数量的每个用户类别。您可通过命令行参数传递来指定要使用同一locustfile中的哪些用户类:

locust -f locustfile.py webMylocust

如果您希望模拟某种类型的更多用户,您可在这些类上设置权重属性。

举例来说,网络用户的可能性是移动用户的三倍:

示例代码:

class WebUser(User):weight = 3...class MobileUser(User):weight = 1...

fixed_count属性

weight和fixed_count属性用法相同,在使用fixed_count属性的情况下,weight属性将被忽略,并且将生成准确计数的用户。

在下面的示例中,将仅生成1个AdminUser实例,以进行一些特定的工作,更准确的控制独立与用户总数的请求计数

class AdminUser(User):wait_time = constant(600)fixed_count = 1@taskdef restart_app(self):...class WebUser(User):...

相关内容

热门资讯

北平锋:民进党当局对所谓“两岸... 12月26日,台湾《中国时报》报道,陆委会近日推动所谓“两岸人民关系条例”四项修正,包含:公务员赴陆...
AI核心产业超万亿,工信部将完... 今年,工业经济顶压前行、向新向优发展,展现强大韧性和活力。 12月25日至26日,全国工业和信息化工...
神州泰岳(300002)披露全... 截至2025年12月26日收盘,神州泰岳(300002)报收于11.37元,较前一交易日上涨0.09...
车企起诉电池企业第一案!吉利旗... 出品 | 搜狐汽车·汽车咖啡馆 作者 | 胡耀丹 2024年底发出的回旋镖,在2025年底向欣旺达疾...
海南产经新观察:封关政策释红利... 中新网海南东方12月26日电 (陈英清)“海南自贸港封关运作顺利实施,政策红利持续释放,南繁水稻制种...
无证售药、两地维权!养生馆纠纷... 一副自制中药制剂,引发两地法院诉讼;一次耐心调解,让双方握手言和。近日,饶平县人民法院调解一宗因养生...
*ST节能(000820)披露... 截至2025年12月26日收盘,*ST节能(000820)报收于3.36元,较前一交易日上涨0.9%...
疑电芯质量存问题,500亿巨头... 二线电池厂商欣旺达(300207.SZ)被起诉了! 12月26日盘后,欣旺达披露公告称,公司子公司欣...
央行报告:加强房地产金融宏观审... 每经AI快讯,据央行网站12月26日消息,中国人民银行近日发布了《中国金融稳定报告(2025)》。报...
济南起步区“民生政策进社区”活...   鲁网12月26日讯深冬微寒,社区里却暖意融融。在起步区崔寨街道凤凰理想社区的小广场上,一排排政策...