你能帮我理解StopUser是如何在蝗虫中工作的吗?我创建了一个简单的例子,我有4个用户的产卵率2,这意味着在第二个,我将有4个工作用户。但是如果我使用StopUser,前两个用户必须在任务完成后停止工作,对吗?
class SimpleClass(HttpUser):
wait_time = between(1, 2)
host = "https://example.com"
@task()
def just_print(self):
logging.debug(f"working {datetime.today().timestamp()}")
raise StopUser组合:
users: 4
spawn-rate: 2
run-time: 20在日志中,还有另一种情况--最后,我有6个用户,前两个用户没有停止工作。
[2022-01-19 21:21:57,560] Andriis-MacBook-Pro.local/INFO/locust.main: Run time limit set to 20 seconds
[2022-01-19 21:21:57,560] Andriis-MacBook-Pro.local/INFO/locust.main: Starting Locust 2.5.1
[2022-01-19 21:21:57,561] Andriis-MacBook-Pro.local/INFO/locust.runners: Ramping to 4 users at a rate of 2.00 per second
[2022-01-19 21:21:57,561] Andriis-MacBook-Pro.local/DEBUG/locust.runners: Ramping to {"SimpleClass": 2} (2 total users)
[2022-01-19 21:21:57,561] Andriis-MacBook-Pro.local/DEBUG/locust.runners: Spawning additional {"SimpleClass": 2} ({"SimpleClass": 0} already running)...
[2022-01-19 21:21:57,562] Andriis-MacBook-Pro.local/DEBUG/locust.runners: 2 users spawned
[2022-01-19 21:21:57,562] Andriis-MacBook-Pro.local/DEBUG/locust.runners: All users of class SimpleClass spawned
[2022-01-19 21:21:57,562] Andriis-MacBook-Pro.local/DEBUG/locust.runners: 0 users have been stopped, 2 still running
[2022-01-19 21:21:57,562] Andriis-MacBook-Pro.local/DEBUG/root: working 1642620117.562613
[2022-01-19 21:21:57,562] Andriis-MacBook-Pro.local/DEBUG/root: working 1642620117.562741
[2022-01-19 21:21:58,567] Andriis-MacBook-Pro.local/DEBUG/locust.runners: Ramping to {"SimpleClass": 4} (4 total users)
[2022-01-19 21:21:58,567] Andriis-MacBook-Pro.local/DEBUG/locust.runners: Spawning additional {"SimpleClass": 4} ({"SimpleClass": 0} already running)...
[2022-01-19 21:21:58,568] Andriis-MacBook-Pro.local/DEBUG/locust.runners: 4 users spawned
[2022-01-19 21:21:58,568] Andriis-MacBook-Pro.local/DEBUG/locust.runners: All users of class SimpleClass spawned
[2022-01-19 21:21:58,568] Andriis-MacBook-Pro.local/DEBUG/locust.runners: 0 users have been stopped, 4 still running
[2022-01-19 21:21:58,568] Andriis-MacBook-Pro.local/INFO/locust.runners: All users spawned: {"SimpleClass": 4} (4 total users)
[2022-01-19 21:21:58,568] Andriis-MacBook-Pro.local/DEBUG/root: working 1642620118.568855
[2022-01-19 21:21:58,569] Andriis-MacBook-Pro.local/DEBUG/root: working 1642620118.569034
[2022-01-19 21:21:58,569] Andriis-MacBook-Pro.local/DEBUG/root: working 1642620118.569189
[2022-01-19 21:21:58,569] Andriis-MacBook-Pro.local/DEBUG/root: working 1642620118.56934
[2022-01-19 21:22:17,147] Andriis-MacBook-Pro.local/INFO/locust.main: --run-time limit reached. Stopping Locust
[2022-01-19 21:22:17,149] Andriis-MacBook-Pro.local/DEBUG/locust.runners: Stopping all users
[2022-01-19 21:22:17,149] Andriis-MacBook-Pro.local/DEBUG/locust.runners: 0 users have been stopped, 0 still running
[2022-01-19 21:22:17,152] Andriis-MacBook-Pro.local/INFO/locust.main: Running teardowns...
[2022-01-19 21:22:17,152] Andriis-MacBook-Pro.local/INFO/locust.main: Shutting down (exit code 0), bye.
[2022-01-19 21:22:17,152] Andriis-MacBook-Pro.local/INFO/locust.main: Cleaning up runner...发布于 2022-01-19 21:03:06
StopUser是蝗虫的内部,不打算直接使用。用户不能真正被阻止。您可以通过调用time.sleep(999999)或其他什么来达到同样的效果。
https://stackoverflow.com/questions/70776732
复制相似问题