Locust 拆解 - 活动测试停止

问题描述 投票:0回答:1

我在我的蝗虫测试中使用事件:@events.test_stop.add_listener 和@events.test_start.add_listener

问题: @events.test_stop.add_listener 不执行数据库请求。

测试结构:

  • 设置
  • 测试
  • 拆解

试运行参数:

  • 1 位用户。
  • 1 生成率
  • 迭代次数 - 2 (-i)
  • locust 插件已安装。
  • 蟒蛇

示例@events.test_stop.add_listener@events.test_start.add_listener

的相同代码
@events.test_start.add_listener
def on_test_start(environment, **kwargs):
    logging.info('Test start. Trying to query the database.')
    response_db = get_count_port_msg()
    logging.info(f'DB response: {response_db}')


@events.test_stop.add_listener
def on_test_stop(environment, **kwargs):
    logging.info('Test stop. Trying to query the database.')
    response_db = get_count_port_msg()
    logging.info(f'DB response: {response_db}')

命令行响应:

[2023-04-26 14:39:06,054] VDI/INFO/locust.main: Starting Locust 2.14.2
[2023-04-26 14:39:17,754] VDI/INFO/root: Test start. Trying to query the database.
[2023-04-26 14:39:17,754] VDI/INFO/root: Execute the request...
[2023-04-26 14:39:17,953] VDI/INFO/root: DB response: 52
[2023-04-26 14:39:17,953] VDI/INFO/locust.runners: Ramping to 1 users at a rate of 1.00 per second
[2023-04-26 14:39:17,953] VDI/INFO/locust.runners: All users spawned: {"LoadTests": 1} (1 total users)
...
[2023-04-26 14:39:23,286] VDI/INFO/root: Iteration limit reached (2), stopping Users at the start of their next task run
[2023-04-26 14:39:23,286] VDI/INFO/root: Last user stopped, quitting runner
[2023-04-26 14:39:23,286] VDI/INFO/root: Test stop. Trying to query the database.
[2023-04-26 14:39:23,286] VDI/INFO/root: Execute the request...

按 CTRL+C 退出并查看报告。

问题: 为什么我没有和 on_test_start 一样的 on_test_stop 响应?谢谢。

python events load-testing locust teardown
1个回答
0
投票

Locust 文档描述了每个 Event 的用途以及它们何时被解雇。

test_stop
Fired on each node when a load test is stopped
。但是您并没有停止测试,而是使用 Ctrl-C 中断了进程。您可以尝试
quitting
事件,因为它是
Fired when the locust process is exiting
.

© www.soinside.com 2019 - 2024. All rights reserved.